---
title: "BladeTemplateEngine – API-Referenz · Quittio"
description: "Renders Blade views with the invoice view model as $invoice. The name \"default\" maps to the configured template. Template names may come from invoice data, so only these views can be selected: the configured template (quittio.pdf.template), the shipped views under \"quittio::templates.\" (no partials) and the views of quittio.pdf.templates (\"invoices.*\" or \"namespace::*\" allows every view below a prefix). Names that are no Blade view fall back to the plain PHP templates, which resolve names inside their template directories only (never file paths)."
canonical_url: "https://quittio.dev/docs/api/Quittio/Laravel/Templates/BladeTemplateEngine"
locale: de
meta:
  "og:description": "Renders Blade views with the invoice view model as $invoice. The name \"default\" maps to the configured template. Template names may come from invoice data, so only these views can be selected: the configured template (quittio.pdf.template), the shipped views under \"quittio::templates.\" (no partials) and the views of quittio.pdf.templates (\"invoices.*\" or \"namespace::*\" allows every view below a prefix). Names that are no Blade view fall back to the plain PHP templates, which resolve names inside their template directories only (never file paths)."
  "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": "BladeTemplateEngine – API-Referenz · Quittio"
  "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](https://quittio.dev/docs/api/Quittio) \\ [Laravel](https://quittio.dev/docs/api/Quittio/Laravel) \\ [Templates](https://quittio.dev/docs/api/Quittio/Laravel/Templates)

# BladeTemplateEngine

final class in quittio/laravel · implements [`TemplateEngine`](https://quittio.dev/docs/api/Quittio/Core/Templates/TemplateEngine)

`Quittio\Laravel\Templates\BladeTemplateEngine` · [Source](https://github.com/Quittio/quittio/blob/v0.7.1/packages/laravel/src/Laravel/Templates/BladeTemplateEngine.php#L23)

Renders Blade views with the invoice view model as $invoice. The name "default" maps to the configured template. Template names may come from invoice data, so only these views can be selected: the configured template (quittio.pdf.template), the shipped views under "quittio::templates." (no partials) and the views of quittio.pdf.templates ("invoices.\*" or "namespace::\*" allows every view below a prefix). Names that are no Blade view fall back to the plain PHP templates, which resolve names inside their template directories only (never file paths).

## Methods \#

| Method | Description |
| --- | --- |
| `->__construct()` | |
| `->allows()` | |
| `::fromSettings()` | The engine of the configuration: pdf.template for "default" and the views of pdf.templates (a missing key means \['invoices.\*'], the views of make:quittio-template). Rendering and the preview use it, so both accept the same views. |
| `->render()` | |

### `__construct()`#

```
public function __construct(
    Factory $views,
    string $defaultView = 'quittio::templates.default.layout',
    PhpTemplateEngine $fallback = new \Quittio\Core\Templates\PhpTemplateEngine(),
    list<string> $allowed = [],
)
```

| Parameter | Type | Description |
| --- | --- | --- |
| `$views` | `Illuminate\Contracts\View\Factory` | |
| `$defaultView` | `string` = `'quittio::templates.default.layout'` | |
| `$fallback` | `[PhpTemplateEngine](https://quittio.dev/docs/api/Quittio/Core/Templates/PhpTemplateEngine)` = `new \Quittio\Core\Templates\PhpTemplateEngine()` | |
| `$allowed` | `list<string>` = `[]` | further selectable views or "prefix\*" patterns |

### `allows()`#

```
public function allows(string $view): bool
```

| Parameter | Type | Description |
| --- | --- | --- |
| `$view` | `string` | |

<dl><dt>Returns</dt>
<dd><code>bool</code></dd>
</dl>

### `fromSettings()`#

```
public static function fromSettings(Factory $views, Settings $settings): self
```

static

The engine of the configuration: pdf.template for "default" and the views of pdf.templates (a missing key means \['invoices.\*'], the views of make:quittio-template). Rendering and the preview use it, so both accept the same views.

| Parameter | Type | Description |
| --- | --- | --- |
| `$views` | `Illuminate\Contracts\View\Factory` | |
| `$settings` | `[Settings](https://quittio.dev/docs/api/Quittio/Laravel/Support/Settings)` | |

<dl><dt>Returns</dt>
<dd><code>self</code></dd>
</dl>

### `render()`#

```
public function render(
    string $template,
    InvoiceViewModel $invoice,
    array $data = [],
): string
```

| Parameter | Type | Description |
| --- | --- | --- |
| `$template` | `string` | |
| `$invoice` | `[InvoiceViewModel](https://quittio.dev/docs/api/Quittio/Core/View/InvoiceViewModel)` | |
| `$data` | `array` = `[]` | |

<dl><dt>Returns</dt>
<dd><code>string</code></dd>
</dl>

```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/Laravel/Templates/BladeTemplateEngine#webpage","@type":"WebPage","description":"Renders Blade views with the invoice view model as $invoice. The name \"default\" maps to the configured template. Template names may come from invoice data, so only these views can be selected: the configured template (quittio.pdf.template), the shipped views under \"quittio::templates.\" (no partials) and the views of quittio.pdf.templates (\"invoices.*\" or \"namespace::*\" allows every view below a prefix). Names that are no Blade view fall back to the plain PHP templates, which resolve names inside their template directories only (never file paths).","name":"BladeTemplateEngine – API-Referenz","url":"https://quittio.dev/docs/api/Quittio/Laravel/Templates/BladeTemplateEngine","isPartOf":{"@id":"https://quittio.dev/#website"},"potentialAction":[{"@type":"ReadAction","target":["https://quittio.dev/docs/api/Quittio/Laravel/Templates/BladeTemplateEngine"]}],"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"}]}
```