Zum Inhalt springen
getnextpdf.com

Enterprise Edition

Markengestaltung

Das Branding-Subsystem wendet während einer Evaluierung sichtbares Evaluierungs-Branding auf erzeugte PDFs an und wendet unter einer bezahlten Lizenz nichts an. Es wird im Paket nextpdf/enterprise ausgeliefert, regelt das Evaluierungsverhalten über alle Editionen hinweg und wird vollständig von der Lizenz gesteuert — nicht vom Anwendungscode. Für die durchgängige Evaluierungsgeschichte siehe Trial and Evaluation Branding; diese Seite dokumentiert das Branding-Subsystem selbst.

Diese Capability wird in NextPDF Enterprise (nextpdf/enterprise) ausgeliefert und wird mit einem Lizenzumschlag der Enterprise-Stufe aktiviert. Eine Bereitstellung ohne diese Berechtigung lädt die Klassen der Capability nicht. Editionen vergleichen und eine Lizenz erwerben.

Anders als die meisten Enterprise-Oberflächen trägt sie einen dedizierten Capability-Code, enterprise.branding, weil sie das Evaluierungsverhalten über alle Editionen hinweg regelt — reine Core- und reine Pro-Bereitstellungen eingeschlossen. Der Branding-Modus wird zur Laufzeit aus dem signierten Lizenzumschlag aufgelöst; kein Anwendungs-Flag wählt ihn aus, und eine bezahlte Lizenz in jeder Edition löst zu BrandingMode::None auf.

Terminal-Fenster
composer require nextpdf/enterprise:^3

Die Laufzeitumgebung hat einen Branding-Modus mit zwei Zuständen, modelliert durch BrandingMode:

  • None — kein Evaluierungs-Branding. Bezahlte und normale Ausgabe wird nie verändert. Dies ist der Standard.
  • EvaluationWatermark — sichtbares Evaluierungs-Branding wird auf erzeugte PDFs angewendet.

BrandingStrategyFactory ordnet den Modus einer Strategie zu: NullBrandingStrategy für None (sie führt keine Arbeit aus und erzeugt keine Veränderung) und EvaluationBrandingStrategy für EvaluationWatermark. Der Lizenzzustand — nicht der Anwendungscode — wählt den Modus aus. Eine bezahlte Lizenz erzeugt nie gebrandete Ausgabe, und es gibt keinen Produktions-Build zum Umschalten und kein Code-Flag zum Setzen.

Diese Seite beschreibt ausschließlich das Laufzeitverhalten. Sie gibt keine Gewährleistung und keine Aussage über Anspruchsberechtigung oder Rechtswirkung ab; die für Ihre Evaluierung oder Ihr Abonnement geltenden Bedingungen werden ausschließlich durch Ihren Lizenzvertrag definiert.

KonzeptVerhalten
BrandingModeZwei Zustände: None (Standard, keine Veränderung) oder EvaluationWatermark.
BrandingStrategyFactoryLöst einen BrandingMode zu einer Strategie auf.
EvaluationBrandingStrategyWendet das Evaluierungs-Wasserzeichen und die Metadaten-Dekoration an.
NullBrandingStrategyNo-op-Strategie für bezahlte / normale Ausgabe.
EvaluationBrandingConfigUnveränderlicher Wasserzeichentext, Metadaten-Dekoration, Schriftgröße, Graustufe und Winkel.
BrandingStrategyVertrag, den die Integrationsschicht nutzt: isActive(), buildPageWatermark(), decorateProducer(), decorateSubject().
BrandingApplicatorWendet eine aufgelöste Strategie auf gerenderte PDF-Bytes an; fail-closed — wirft BrandingApplicationException, wenn aktives Branding nicht markiert werden kann.

Das Subsystem stellt eine kleine aufrufbare Oberfläche für die Integrationsschicht bereit, die die vom Lizenzzustand aufgelöste Strategie anwendet; der Anwendungscode entscheidet nie, ob gebrandet wird. Die folgenden Beispiele zeigen die zwei Berührungspunkte: das Lesen einer aufgelösten Strategie und das Markieren gerenderter Bytes mit dem fail-closed Applicator.

Lösen Sie die vom Lizenzzustand ausgewählte Strategie auf und lesen Sie ihr Verhalten. Eine bezahlte Lizenz löst zu BrandingMode::None auf, dessen Strategie inaktiv ist und jeden Wert unverändert durchreicht.

resolve-strategy.php
<?php
declare(strict_types=1);
use NextPDF\Enterprise\Branding\BrandingMode;
use NextPDF\Enterprise\Branding\BrandingStrategyFactory;
// The license resolves the mode; None is what a paid license produces.
$strategy = BrandingStrategyFactory::create(BrandingMode::None);
\var_dump($strategy->isActive()); // bool(false)
echo $strategy->decorateProducer('NextPDF 3.1'); // NextPDF 3.1 (unchanged)

Markieren Sie bereits gerenderte PDF-Bytes mit der vom Lizenzzustand aufgelösten Strategie. BrandingApplicator::apply() gibt die Eingabe unter einer bezahlten Lizenz unverändert zurück und hängt unter einer Evaluierungslizenz das Wasserzeichen und die Metadatenmarkierungen an, während die ursprünglichen Bytes intakt bleiben. Es wirft BrandingApplicationException, wenn aktives Branding nicht sicher angewendet werden kann — behandeln Sie das als terminal und committen Sie niemals die unmarkierten Bytes.

apply-evaluation-branding.php
<?php
declare(strict_types=1);
use NextPDF\Enterprise\Branding\BrandingApplicationException;
use NextPDF\Enterprise\Branding\BrandingApplicator;
use NextPDF\Enterprise\Branding\BrandingMode;
use NextPDF\Enterprise\Branding\BrandingStrategyFactory;
use NextPDF\Enterprise\Branding\EvaluationBrandingConfig;
/**
* Apply the branding the license resolved to freshly rendered PDF bytes.
*
* @param string $renderedPdf Bytes from the render engine.
* @param BrandingMode $mode Resolved from the signed license envelope.
*
* @throws BrandingApplicationException When active branding cannot be marked.
*/
function markEvaluationOutput(string $renderedPdf, BrandingMode $mode): string
{
$strategy = BrandingStrategyFactory::create(
$mode,
new EvaluationBrandingConfig(
watermarkText: 'EVALUATION COPY — Not for Production Use',
),
);
try {
return (new BrandingApplicator())->apply($renderedPdf, $strategy);
} catch (BrandingApplicationException $e) {
// Fail-closed: never emit unbranded evaluation output. Dead-letter.
throw $e;
}
}

Wenn die aktive Lizenz EvaluationWatermark auswählt, tut die Evaluierungsstrategie Folgendes:

  • Sie zeichnet einen hellgrauen diagonalen Wasserzeichentext auf jede Seite, gerendert als Seiteninhaltsstrom in einem isolierten Grafikzustand, sodass er den umgebenden Inhalt oder Ihr Layout nicht verändert;
  • sie hängt ein Evaluierungs-Suffix an die Producer-Metadaten des Dokuments an;
  • sie stellt ein Evaluierungs-Präfix den Subject-Metadaten des Dokuments voran.

Das Wasserzeichen verwendet eine Base14-Schrift und eine Rotationsmatrix, um den Text diagonal über die Seitenmitte zu positionieren. Das Konfigurationsobjekt ist unveränderlich und validiert seine Eingaben (zum Beispiel darf der Wasserzeichentext nicht leer sein und die Schriftgröße muss positiv sein).

Unter einer bezahlten (nicht-Evaluierungs-) Lizenz ist der Branding-Modus None und die Null-Strategie wird ausgewählt: kein Wasserzeichen, kein Producer-Suffix, kein Subject-Präfix. Die Ausgabe ist identisch mit einer Ausgabe, die ganz ohne Branding-Subsystem erzeugt wurde. Das Entfernen des Evaluierungs-Brandings erfordert keine Codeänderung — installieren Sie eine bezahlte Lizenz, und das nächste erzeugte Dokument ist ungebrandet.

  • Branding erscheint, wenn der Lizenzzustand evaluierungsartig ist. Dies spiegelt den Lizenzzustand wider, keinen Defekt; prüfen Sie den Lizenzstatus und verlängern Sie über das Lizenzportal.
  • Das Wasserzeichen ist absichtlich zentriert und diagonal, damit die Evaluierungsausgabe eindeutig ist; es ist nicht darauf ausgelegt, für die Produktion abgestimmt zu werden. Eine bezahlte Lizenz entfernt es vollständig.
  • Producer- und Subject-Metadaten tragen während einer Evaluierung Evaluierungsmarkierungen und fehlen unter einer bezahlten Lizenz.

Das Wasserzeichen ist ein kleiner, fester Inhaltsstrom pro Seite mit vernachlässigbarem Einfluss auf die Erzeugungszeit oder die Dokumentgröße. Unter einer bezahlten Lizenz führt das Subsystem keine Arbeit aus. Das Seiten-Performance-Budget spiegelt das Rendern der Dokumentation wider.

Evaluierungs-Branding ist eine Sichtbarkeitsmarkierung, keine Sicherheitskontrolle. Es kennzeichnet Evaluierungsausgabe. Es ist keine digitale Signatur und darf nicht als solche herangezogen werden. Für manipulationssichere Ausgabe verwenden Sie die in der Funktionsmatrix beschriebenen Signierfähigkeiten. Die Lizenz, die den Branding-Modus auswählt, ist ein signierter Umschlag, dessen Aussteller-Signatur die Laufzeitumgebung verifiziert.

Das Branding-Subsystem fügt ein festes Wasserzeichen und Metadatenmarkierungen hinzu; es liest oder überträgt keinen Dokumenteninhalt und führt keine Netzwerkaufrufe aus.

Das Subsystem protokolliert keinen Dokumenteninhalt. Lizenzzustandsübergänge, die den Branding-Modus ändern, werden über das Lizenzierungs-Subsystem sichtbar gemacht, nicht hier.

Für diese Seite wird keine Standardkonformität beansprucht. Sie beschreibt ausschließlich das Laufzeitverhalten. Sie gibt keine Gewährleistung, Zertifizierung oder Anspruchsberechtigung an oder impliziert sie. Die Bedingungen Ihrer Evaluierung oder Ihres Abonnements werden ausschließlich durch Ihren Lizenzvertrag definiert.

Dieses Modul führt keine kryptografischen Operationen aus. Die Verifizierung der Lizenzsignatur wird vom Lizenzierungs-Subsystem übernommen.

Das Branding-Subsystem selbst verarbeitet keine externe Eingabe über den aufgelösten Branding-Modus hinaus. Der Lizenzumschlag, der den Modus auswählt, ist signiert, und seine Aussteller-Signatur wird von der Laufzeitumgebung verifiziert; das Fälschen des Modus würde das Fälschen dieser Signatur erfordern.

  • BrandingMode hat zwei Zustände: None (Standard; keine Veränderung der Ausgabe) und EvaluationWatermark.
  • Unter einer bezahlten (nicht-Evaluierungs-) Lizenz ist der Modus None und die Null-Strategie wird ausgewählt: Die Ausgabe ist identisch mit einer Ausgabe, die ganz ohne Branding-Subsystem erzeugt wurde.
  • Unter einer Evaluierungslizenz zeichnet die Strategie ein diagonales Wasserzeichen in einem isolierten Grafikzustand und hängt Evaluierungsmarkierungen an die Producer- und Subject-Metadaten an.
  • Das Konfigurationsobjekt ist unveränderlich und validiert seine Eingaben (Wasserzeichentext nicht leer, Schriftgröße positiv).

Diese Seite dokumentiert ausschließlich extern beobachtbares Verhalten und die unterstützte öffentliche API-Oberfläche. Interne Namespace-Pfade, Hilfsklassen, Mechanismustabellen, Runbook-Dateinamen und Ticket-Präfixe liegen außerhalb des Geltungsbereichs.

Das Branding-Subsystem wird im Paket nextpdf/enterprise ausgeliefert, regelt jedoch das Evaluierungsverhalten über alle Editionen hinweg, einschließlich reiner Core- und Pro-Bereitstellungen, die eine Evaluierungslizenz verwenden. Es gibt kein reines Core-Branding-Subsystem, auf das zurückgegriffen werden könnte; eine bezahlte Lizenz in jeder Edition löst zu BrandingMode::None auf.

Es gibt kein separates Pro-Branding-Subsystem. Dasselbe nextpdf/enterprise-Branding-Subsystem regelt das Evaluierungsverhalten für Pro-Bereitstellungen; eine bezahlte Pro-Lizenz löst zu BrandingMode::None auf, genau wie eine bezahlte Enterprise-Lizenz.

Interne Mechanismus-Details verbleiben in der internen Dokumentation des Quell-Repositorys und liegen außerhalb des Geltungsbereichs dieses Handbuchs.

Der Lizenzumschlag, der den Branding-Modus auswählt, ist ein signiertes Artefakt, dessen Aussteller-Signatur die Laufzeitumgebung verifiziert; Lizenzbereitstellung, -verlängerung und sichere Speicherung der Lizenz liegen in der Verantwortung des Betreibers. Das Subsystem führt keine Netzwerkaufrufe aus und liest keinen Dokumenteninhalt.

Diese Seite beschreibt ausschließlich das Laufzeitverhalten. Sie gibt keine Gewährleistung, Zertifizierung oder Anspruchsberechtigung an oder impliziert sie, und sie stellt keine Rechtsberatung dar. Die Bedingungen Ihrer Evaluierung oder Ihres Abonnements — einschließlich, welches Branding gilt und für wie lange — werden ausschließlich durch Ihren Lizenzvertrag definiert. Konsultieren Sie diesen Vertrag oder wenden Sie sich an den Vertrieb.