---
title: "Quittio\\Core\\Pdf – API-Referenz"
description: "The public classes in Quittio\\Core\\Pdf."
canonical_url: "https://quittio.dev/docs/api/Quittio/Core/Pdf"
locale: de
meta:
  "og:description": "The public classes in Quittio\\Core\\Pdf."
  "og:image": "https://quittio.dev/og/quittio-de.jpg"
  "og:image:alt": "Quittio: E-Rechnungen für PHP und Laravel. Rechtssicher, validiert, archiviert, mit geprüfter Beispielrechnung."
  "og:image:height": "630"
  "og:image:type": image/jpeg
  "og:image:width": "1200"
  "og:title": "Quittio\\Core\\Pdf – API-Referenz"
  "twitter:image": "https://quittio.dev/og/quittio-de.jpg"
  "twitter:image:alt": "Quittio: E-Rechnungen für PHP und Laravel. Rechtssicher, validiert, archiviert, mit geprüfter Beispielrechnung."
---

> Index of every page on this site: [llms.txt](https://quittio.dev/llms.txt)

[API reference](https://quittio.dev/docs/api)

# Quittio\\Core\\Pdf

## quittio/core \#

### [Quittio\\Core\\Pdf](https://quittio.dev/docs/api/Quittio/Core/Pdf)

- [`EmbeddedXml`](https://quittio.dev/docs/api/Quittio/Core/Pdf/EmbeddedXml)Invoice XML to be embedded into a PDF/A-3 (ZUGFeRD/Factur-X, XRechnung in PDF).
- [`LogoCache`](https://quittio.dev/docs/api/Quittio/Core/Pdf/LogoCache)Prepares logos for the PDF and caches the result.
- [`PdfEmbeddedFileExtractor`](https://quittio.dev/docs/api/Quittio/Core/Pdf/PdfEmbeddedFileExtractor)Extracts the embedded invoice XML from PDF files (ZUGFeRD 2.x, Factur-X, XRechnung in PDF).
- [`PdfException`](https://quittio.dev/docs/api/Quittio/Core/Pdf/PdfException)
- [`PdfRenderer`](https://quittio.dev/docs/api/Quittio/Core/Pdf/PdfRenderer) interfaceTurns HTML (from the template) into a PDF, embedding the invoice XML if requested.
- [`RemoteImageFetcher`](https://quittio.dev/docs/api/Quittio/Core/Pdf/RemoteImageFetcher)Downloads remote logos without server-side request forgery: only http and https, only hosts whose every resolved address (IPv4 and IPv6) is publicly routable, the connection pinned to the checked address (no second DNS lookup) and every redirect checked again.
- [`RenderRequest`](https://quittio.dev/docs/api/Quittio/Core/Pdf/RenderRequest)Input for a PDF renderer.

### [Quittio\\Core\\Pdf\\PostProcessing](https://quittio.dev/docs/api/Quittio/Core/Pdf/PostProcessing)

- [`MpdfPostProcessor`](https://quittio.dev/docs/api/Quittio/Core/Pdf/PostProcessing/MpdfPostProcessor)Imports the pages of an existing PDF (FPDI via mPDF), embeds the XML and writes PDF/A-3 metadata and output intent.
- [`PdfPostProcessor`](https://quittio.dev/docs/api/Quittio/Core/Pdf/PostProcessing/PdfPostProcessor) interfaceTurns an existing PDF into PDF/A-3 with embedded invoice XML (for callback and passthrough renderers).

### [Quittio\\Core\\Pdf\\Qr](https://quittio.dev/docs/api/Quittio/Core/Pdf/Qr)

- [`EpcGiroCodeGenerator`](https://quittio.dev/docs/api/Quittio/Core/Pdf/Qr/EpcGiroCodeGenerator)EPC QR code ("GiroCode") for SEPA credit transfers, guideline EPC069-12 version 002.
- [`PaymentQrGenerator`](https://quittio.dev/docs/api/Quittio/Core/Pdf/Qr/PaymentQrGenerator) interfaceCreates the payload of a payment QR code (GiroCode, Swiss QR bill, …).
- [`PaymentSlip`](https://quittio.dev/docs/api/Quittio/Core/Pdf/Qr/PaymentSlip)The texts of a payment slip with receipt (ProvidesPaymentSlip), laid out by the templates after the Swiss QR bill: receipt (62 mm) and payment part (148 mm) in a strip of 210 × 105 mm at the bottom of the page, with the code at 46 × 46 mm.
- [`ProvidesPaymentSlip`](https://quittio.dev/docs/api/Quittio/Core/Pdf/Qr/ProvidesPaymentSlip) interfaceA payment QR code generator whose code belongs on a payment slip of its own, e.g. the payment part and receipt of the Swiss QR bill. The default templates then print the slip at the bottom of a page of its own instead of the small code next to the bank details.
- [`QrImage`](https://quittio.dev/docs/api/Quittio/Core/Pdf/Qr/QrImage)Renders QR codes as SVG data URIs for templates (no further dependency besides mpdf/qrcode).

### [Quittio\\Core\\Pdf\\Renderers](https://quittio.dev/docs/api/Quittio/Core/Pdf/Renderers)

- [`CallbackRenderer`](https://quittio.dev/docs/api/Quittio/Core/Pdf/Renderers/CallbackRenderer)Own rendering function (e.g. Browsershot, Gotenberg) that returns PDF binary data. PDF/A and the embedded XML are added by the post processor.
- [`DenyingHttpClient`](https://quittio.dev/docs/api/Quittio/Core/Pdf/Renderers/DenyingHttpClient)mPDF HTTP client that refuses every request (defence in depth).
- [`MpdfRenderer`](https://quittio.dev/docs/api/Quittio/Core/Pdf/Renderers/MpdfRenderer)Default renderer: HTML/CSS to PDF/A-3b with mPDF, in pure PHP.
- [`PassthroughRenderer`](https://quittio.dev/docs/api/Quittio/Core/Pdf/Renderers/PassthroughRenderer)Uses a finished PDF supplied by the application; only PDF/A and the XML are added.

### [Quittio\\Core\\Pdf\\Xmp](https://quittio.dev/docs/api/Quittio/Core/Pdf/Xmp)

- [`FacturXXmp`](https://quittio.dev/docs/api/Quittio/Core/Pdf/Xmp/FacturXXmp)XMP metadata for Factur-X/ZUGFeRD: the fx description and the PDF/A extension schema. Without the extension schema the PDF is readable, but not valid PDF/A.

```json
{"@context":"https://schema.org","@graph":[{"@id":"https://quittio.dev/#website","@type":"WebSite","description":"E-Rechnungen für PHP und Laravel: ZUGFeRD, XRechnung und Peppol erstellen, prüfen, lesen und archivieren.","inLanguage":"de-DE","name":"Quittio","url":"https://quittio.dev/","publisher":{"@id":"https://quittio.dev/#identity"},"workTranslation":{"@id":"https://quittio.dev/en#website"}},{"@id":"https://quittio.dev/docs/api/Quittio/Core/Pdf#webpage","@type":"WebPage","description":"The public classes in Quittio\\Core\\Pdf.","name":"Quittio\\Core\\Pdf – API-Referenz","url":"https://quittio.dev/docs/api/Quittio/Core/Pdf","isPartOf":{"@id":"https://quittio.dev/#website"},"potentialAction":[{"@type":"ReadAction","target":["https://quittio.dev/docs/api/Quittio/Core/Pdf"]}],"primaryImageOfPage":{"@id":"https://quittio.dev/#logo"}},{"@id":"https://quittio.dev/#identity","@type":"Organization","description":"Open-Source-Bibliothek für E-Rechnungen in PHP und Laravel (ZUGFeRD, XRechnung, Peppol) und Quittio Managed.","email":"kontakt@niklasforst.de","legalName":"Niklas Forst – Softwareentwicklung","name":"Quittio","url":"https://quittio.dev","founder":{"@type":"Person","name":"Niklas Forst","url":"https://quittio.dev/ueber"},"logo":{"@id":"https://quittio.dev/#logo"},"sameAs":["https://github.com/Quittio/quittio","https://packagist.org/packages/quittio/quittio"]},{"@id":"https://quittio.dev/#logo","@type":"ImageObject","caption":"Quittio","contentUrl":"https://quittio.dev/logo.png","inLanguage":"de-DE","url":"https://quittio.dev/logo.png"}]}
```