Enterprise editie
Branding
In het kort
Sectie met titel “In het kort”Het brandingsubsysteem past tijdens een evaluatie zichtbare evaluatiebranding toe op gegenereerde PDF-bestanden en past onder een betaalde licentie niets toe. Het wordt geleverd in het pakket nextpdf/enterprise, regelt het evaluatiegedrag over edities heen en wordt volledig aangestuurd door de licentie — niet door applicatiecode. Voor het volledige evaluatieverhaal, zie Proef- en evaluatiebranding; deze pagina documenteert het brandingsubsysteem zelf.
Beschikbaarheid en licentie
Sectie met titel “Beschikbaarheid en licentie”Deze capaciteit wordt geleverd in NextPDF Enterprise (nextpdf/enterprise) en wordt geactiveerd met een licentie-envelop van het Enterprise-niveau. Een implementatie zonder dat recht laadt de klassen van de capaciteit niet. Vergelijk edities en verkrijg een licentie.
Anders dan de meeste Enterprise-oppervlakken draagt het een toegewijde capaciteitscode, enterprise.branding, omdat het het evaluatiegedrag over alle edities regelt — inclusief Core-only- en Pro-only-implementaties. De brandingmodus wordt tijdens runtime uit de ondertekende licentie-envelop geresolved; geen applicatievlag selecteert deze, en een betaalde licentie in elke editie resolveert naar BrandingMode::None.
Installatie
Sectie met titel “Installatie”composer require nextpdf/enterprise:^3Conceptueel overzicht
Sectie met titel “Conceptueel overzicht”De runtime heeft een brandingmodus met twee toestanden, gemodelleerd door BrandingMode:
- None — geen evaluatiebranding. Betaalde en normale uitvoer wordt nooit gewijzigd. Dit is de standaard.
- EvaluationWatermark — zichtbare evaluatiebranding wordt toegepast op gegenereerde PDF-bestanden.
BrandingStrategyFactory koppelt de modus aan een strategie: NullBrandingStrategy voor None (deze voert geen werk uit en produceert geen wijziging) en EvaluationBrandingStrategy voor EvaluationWatermark. De licentiestatus — niet applicatiecode — selecteert de modus. Een betaalde licentie produceert nooit gebrande uitvoer, en er is geen productie-build om te wisselen en geen codevlag om om te zetten.
Deze pagina beschrijft alleen het runtimegedrag. Ze geeft geen garantie en doet geen uitspraak over geschiktheid of juridisch effect; de voorwaarden die op je evaluatie of abonnement van toepassing zijn, worden uitsluitend bepaald door je licentieovereenkomst.
API-oppervlak
Sectie met titel “API-oppervlak”| Concept | Gedrag |
|---|---|
BrandingMode | Twee toestanden: None (standaard, geen wijziging) of EvaluationWatermark. |
BrandingStrategyFactory | Resolveert een BrandingMode naar een strategie. |
EvaluationBrandingStrategy | Past het evaluatiewatermerk en de metadatadecoratie toe. |
NullBrandingStrategy | No-op-strategie voor betaalde / normale uitvoer. |
EvaluationBrandingConfig | Onveranderlijke watermerktekst, metadatadecoratie, lettergrootte, grijswaarde en hoek. |
BrandingStrategy | Contract dat de integratielaag consumeert: isActive(), buildPageWatermark(), decorateProducer(), decorateSubject(). |
BrandingApplicator | Past een geresolvede strategie toe op gerenderde PDF-bytes; fail-closed — werpt BrandingApplicationException wanneer actieve branding niet kan worden gemarkeerd. |
Het subsysteem stelt een klein aanroepbaar oppervlak beschikbaar voor de integratielaag die de strategie toepast die de licentie heeft geresolved; applicatiecode kiest nooit of er wordt gebrand. De onderstaande voorbeelden tonen de twee aanraakpunten: het lezen van een geresolvede strategie, en het markeren van gerenderde bytes met de fail-closed-applicator.
Codevoorbeeld — Snelstart
Sectie met titel “Codevoorbeeld — Snelstart”Resolveer de strategie die de licentie heeft geselecteerd en lees het gedrag ervan uit. Een betaalde licentie resolveert naar BrandingMode::None, waarvan de strategie inactief is en elke waarde ongewijzigd doorgeeft.
<?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)Codevoorbeeld — Productie
Sectie met titel “Codevoorbeeld — Productie”Markeer reeds gerenderde PDF-bytes met de strategie die de licentie heeft geresolved. BrandingApplicator::apply() geeft de invoer ongewijzigd terug voor een betaalde licentie en voegt, voor een evaluatielicentie, het watermerk en de metadatamarkeringen toe terwijl de originele bytes intact blijven. Het werpt BrandingApplicationException wanneer actieve branding niet veilig kan worden toegepast — behandel dat als terminaal en commit nooit de ongemarkeerde bytes.
<?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; }}Wat evaluatiebranding doet
Sectie met titel “Wat evaluatiebranding doet”Wanneer de actieve licentie EvaluationWatermark selecteert, doet de evaluatiestrategie het volgende:
- tekent een lichtgrijze diagonale watermerktekst op elke pagina, gerenderd als een pagina-contentstream in een geïsoleerde grafische status zodat deze de omringende inhoud of jouw lay-out niet wijzigt;
- voegt een evaluatiesuffix toe aan de producer-metadata van het document;
- plaatst een evaluatieprefix vóór de subject-metadata van het document.
Het watermerk gebruikt een Base14-lettertype en een rotatiematrix om de tekst diagonaal over het paginamidden te positioneren. Het configuratieobject is onveranderlijk en valideert zijn invoer (bijvoorbeeld: watermerktekst mag niet leeg zijn en de lettergrootte moet positief zijn).
Hoe een betaalde licentie branding verwijdert
Sectie met titel “Hoe een betaalde licentie branding verwijdert”Onder een betaalde (niet-evaluatie) licentie is de brandingmodus None en wordt de null-strategie geselecteerd: geen watermerk, geen producer-suffix, geen subject-prefix. De uitvoer is identiek aan uitvoer die zonder enig brandingsubsysteem is geproduceerd. Het verwijderen van evaluatiebranding vereist geen codewijziging — installeer een betaalde licentie en het volgende gegenereerde document is zonder branding.
Randgevallen en valkuilen
Sectie met titel “Randgevallen en valkuilen”- Branding verschijnt wanneer de licentiestatus van het evaluatietype is. Dit weerspiegelt de licentiestatus, geen defect; controleer de licentiestatus en vernieuw via het licentieportaal.
- Het watermerk is per ontwerp gecentreerd en diagonaal zodat evaluatie-uitvoer ondubbelzinnig is; het is niet bedoeld om voor productie te worden afgesteld. Een betaalde licentie verwijdert het volledig.
- Producer- en subject-metadata dragen tijdens een evaluatie evaluatiemarkeringen en ontbreken onder een betaalde licentie.
Prestaties
Sectie met titel “Prestaties”Het watermerk is een kleine, vaste content-stream per pagina met een verwaarloosbare impact op de generatietijd of de documentgrootte. Onder een betaalde licentie voert het subsysteem geen werk uit. Het prestatiebudget van de pagina weerspiegelt het renderen van de documentatie.
Beveiligingsnotities
Sectie met titel “Beveiligingsnotities”Evaluatiebranding is een zichtbaarheidsmarkering, geen beveiligingscontrole. Het geeft evaluatie-uitvoer aan. Het is geen digitale handtekening en mag niet als zodanig worden vertrouwd. Gebruik voor manipulatieaantoonbare uitvoer de ondertekeningscapaciteiten die in de functiematrix worden beschreven. De licentie die de brandingmodus selecteert is een ondertekende envelop waarvan de runtime de uitgever-handtekening verifieert.
Datalocatie en PII-mitigaties
Sectie met titel “Datalocatie en PII-mitigaties”Het brandingsubsysteem voegt een vast watermerk en metadatamarkeringen toe; het leest of verzendt geen documentinhoud en doet geen netwerkaanroepen.
Veilige telemetrie en logscrubbing
Sectie met titel “Veilige telemetrie en logscrubbing”Het subsysteem logt geen documentinhoud. Overgangen in de licentiestatus die de brandingmodus wijzigen, worden via het licentiesubsysteem getoond, niet hier.
Conformiteit
Sectie met titel “Conformiteit”Voor deze pagina wordt geen standaardenconformiteit geclaimd. Ze beschrijft alleen het runtimegedrag. Ze stelt of impliceert geen enkele garantie, certificering of geschiktheid. De voorwaarden van je evaluatie of abonnement worden uitsluitend bepaald door je licentieovereenkomst.
FIPS-modusgedrag
Sectie met titel “FIPS-modusgedrag”Deze module voert geen cryptografische operaties uit. Verificatie van de licentiehandtekening wordt afgehandeld door het licentiesubsysteem.
Dreigingsmodel
Sectie met titel “Dreigingsmodel”Het brandingsubsysteem zelf verwerkt geen externe invoer buiten de geresolvede brandingmodus. De licentie-envelop die de modus selecteert is ondertekend en de uitgever-handtekening ervan wordt door de runtime geverifieerd; het vervalsen van de modus zou het vervalsen van die handtekening vereisen.
Gedragscontract
Sectie met titel “Gedragscontract”BrandingModeheeft twee toestanden:None(standaard; geen wijziging van de uitvoer) enEvaluationWatermark.- Onder een betaalde (niet-evaluatie) licentie is de modus
Noneen wordt de null-strategie geselecteerd: de uitvoer is identiek aan uitvoer die zonder enig brandingsubsysteem is geproduceerd. - Onder een evaluatielicentie tekent de strategie een diagonaal watermerk in een geïsoleerde grafische status en voegt evaluatiemarkeringen toe aan de producer- en subject-metadata.
- Het configuratieobject is onveranderlijk en valideert zijn invoer (watermerktekst niet leeg, lettergrootte positief).
Publicatiegrens
Sectie met titel “Publicatiegrens”Deze pagina documenteert alleen extern waarneembaar gedrag en het ondersteunde publieke API-oppervlak. Interne namespace-paden, helper-klassen, mechanismetabellen, runbook-bestandsnamen en ticketprefixen vallen buiten het bereik.
Core-fallback
Sectie met titel “Core-fallback”Het brandingsubsysteem wordt geleverd in het pakket nextpdf/enterprise, maar regelt het evaluatiegedrag over alle edities heen, inclusief Core- en Pro-only-implementaties die een evaluatielicentie gebruiken. Er is geen Core-only-brandingsubsysteem om op terug te vallen; een betaalde licentie in elke editie resolveert naar BrandingMode::None.
Pro-fallback
Sectie met titel “Pro-fallback”Er is geen apart Pro-brandingsubsysteem. Hetzelfde nextpdf/enterprise-brandingsubsysteem regelt het evaluatiegedrag voor Pro-implementaties; een betaalde Pro-licentie resolveert naar BrandingMode::None precies zoals een betaalde Enterprise-licentie dat doet.
Enterprise-grensnotitie
Sectie met titel “Enterprise-grensnotitie”Interne mechanismedetails blijven in de interne documentatie van de bron-repository en vallen buiten het bereik van deze handleiding.
Implementatiegrens
Sectie met titel “Implementatiegrens”De licentie-envelop die de brandingmodus selecteert is een ondertekend artefact waarvan de runtime de uitgever-handtekening verifieert; het provisioneren, vernieuwen en veilig opslaan van de licentie is de verantwoordelijkheid van de operator. Het subsysteem doet geen netwerkaanroepen en leest geen documentinhoud.
Juridisch-compliancegrens
Sectie met titel “Juridisch-compliancegrens”Deze pagina beschrijft alleen het runtimegedrag. Ze stelt of impliceert geen enkele garantie, certificering of geschiktheid, en vormt geen juridisch advies. De voorwaarden van je evaluatie of abonnement — inclusief welke branding van toepassing is en voor hoe lang — worden uitsluitend bepaald door je licentieovereenkomst. Raadpleeg die overeenkomst of neem contact op met sales.
Zie ook
Sectie met titel “Zie ook”- Branding — Diepe referentie — publieke API en gedragscontract voor dit subsysteem.
- Proef- en evaluatiebranding — het volledige evaluatieverhaal.
- Licentieactivering
- Enterprise-overzicht
- Functiematrix Core versus Pro versus Enterprise