Lewati ke konten
getnextpdf.com

Enterprise edisi

Branding

Subsistem branding menerapkan branding evaluasi yang terlihat pada PDF yang dihasilkan selama masa evaluasi dan tidak menerapkan apa pun di bawah lisensi berbayar. Subsistem ini disampaikan dalam paket nextpdf/enterprise, mengatur perilaku evaluasi lintas edisi, dan sepenuhnya digerakkan oleh lisensi — bukan oleh kode aplikasi. Untuk kisah evaluasi menyeluruh, lihat Branding Uji Coba dan Evaluasi; halaman ini mendokumentasikan subsistem branding itu sendiri.

Kapabilitas ini disertakan dalam NextPDF Enterprise (nextpdf/enterprise) dan diaktifkan dengan amplop lisensi tingkat-Enterprise. Penerapan tanpa entitlement tersebut tidak memuat kelas-kelas kapabilitas ini. Bandingkan edisi dan dapatkan lisensi.

Tidak seperti sebagian besar permukaan Enterprise, ia membawa kode kapabilitas khusus, enterprise.branding, karena mengatur perilaku evaluasi di semua edisi — termasuk penerapan khusus-Core dan khusus-Pro. Mode branding ter-resolve dari amplop lisensi bertanda tangan saat runtime; tidak ada flag aplikasi yang memilihnya, dan lisensi berbayar di edisi mana pun ter-resolve ke BrandingMode::None.

Terminal window
composer require nextpdf/enterprise:^3

Runtime memiliki mode branding dengan dua keadaan, dimodelkan oleh BrandingMode:

  • None — tanpa branding evaluasi. Keluaran berbayar dan normal tidak pernah dimodifikasi. Ini adalah baku.
  • EvaluationWatermark — branding evaluasi yang terlihat diterapkan pada PDF yang dihasilkan.

BrandingStrategyFactory memetakan mode ke sebuah strategi: NullBrandingStrategy untuk None (ia tidak melakukan pekerjaan dan tidak menghasilkan modifikasi) dan EvaluationBrandingStrategy untuk EvaluationWatermark. Keadaan lisensi — bukan kode aplikasi — memilih mode tersebut. Lisensi berbayar tidak pernah menghasilkan keluaran ber-branding, dan tidak ada build produksi untuk diganti serta tidak ada flag kode untuk ditukar.

Halaman ini hanya menjelaskan perilaku runtime. Halaman ini tidak membuat garansi dan tidak menyatakan apa pun tentang kelayakan atau efek hukum; ketentuan yang berlaku untuk evaluasi atau langganan Anda didefinisikan semata-mata oleh perjanjian lisensi Anda.

KonsepPerilaku
BrandingModeDua keadaan: None (baku, tanpa modifikasi) atau EvaluationWatermark.
BrandingStrategyFactoryMe-resolve BrandingMode ke sebuah strategi.
EvaluationBrandingStrategyMenerapkan tanda air evaluasi dan dekorasi metadata.
NullBrandingStrategyStrategi no-op untuk keluaran berbayar / normal.
EvaluationBrandingConfigTeks tanda air imutabel, dekorasi metadata, ukuran fon, tingkat keabuan, dan sudut.
BrandingStrategyKontrak yang dikonsumsi lapisan integrasi: isActive(), buildPageWatermark(), decorateProducer(), decorateSubject().
BrandingApplicatorMenerapkan strategi ter-resolve ke byte PDF yang dirender; fail-closed — melempar BrandingApplicationException ketika branding aktif tidak dapat ditandai.

Subsistem mengekspos permukaan callable kecil untuk lapisan integrasi yang menerapkan strategi yang di-resolve lisensi; kode aplikasi tidak pernah memilih apakah akan mem-branding. Sampel di bawah menunjukkan dua titik sentuh: membaca strategi ter-resolve, dan menandai byte yang dirender dengan applicator fail-closed.

Resolve strategi yang dipilih lisensi dan baca perilakunya. Lisensi berbayar ter-resolve ke BrandingMode::None, yang strateginya tidak aktif dan meneruskan setiap nilai tanpa perubahan.

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)

Tandai byte PDF yang sudah dirender dengan strategi yang di-resolve lisensi. BrandingApplicator::apply() mengembalikan masukan tanpa perubahan untuk lisensi berbayar dan, untuk lisensi evaluasi, menambahkan tanda air dan penanda metadata sambil membiarkan byte asli tetap utuh. Ia melempar BrandingApplicationException ketika branding aktif tidak dapat diterapkan dengan aman — perlakukan itu sebagai terminal dan jangan pernah meng-commit byte yang tidak ditandai.

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;
}
}

Ketika lisensi aktif memilih EvaluationWatermark, strategi evaluasi:

  • menggambar teks tanda air diagonal abu-abu terang pada setiap halaman, dirender sebagai aliran konten halaman dalam keadaan grafik terisolasi sehingga tidak mengubah konten sekitar atau tata letak Anda;
  • menambahkan sufiks evaluasi ke metadata producer dokumen;
  • menambahkan prefiks evaluasi di awal metadata subject dokumen.

Tanda air menggunakan fon Base14 dan matriks rotasi untuk memosisikan teks secara diagonal melintasi pusat halaman. Objek konfigurasi bersifat imutabel dan memvalidasi masukannya (misalnya, teks tanda air tidak boleh kosong dan ukuran fon harus positif).

Di bawah lisensi berbayar (non-evaluasi), mode branding adalah None dan strategi null dipilih: tanpa tanda air, tanpa sufiks producer, tanpa prefiks subject. Keluaran identik dengan keluaran yang dihasilkan tanpa subsistem branding sama sekali. Menghapus branding evaluasi tidak memerlukan perubahan kode — pasang lisensi berbayar dan dokumen berikutnya yang dihasilkan tidak ber-branding.

  • Branding muncul ketika keadaan lisensi bergaya-evaluasi. Ini mencerminkan keadaan lisensi, bukan cacat; periksa status lisensi dan perbarui melalui portal lisensi.
  • Tanda air ditempatkan di tengah dan diagonal secara sengaja agar keluaran evaluasi tidak ambigu; ia tidak dimaksudkan untuk disetel untuk produksi. Lisensi berbayar menghapusnya sepenuhnya.
  • Metadata producer dan subject membawa penanda evaluasi selama masa evaluasi dan absen di bawah lisensi berbayar.

Tanda air adalah aliran konten per-halaman yang kecil dan tetap dengan dampak yang dapat diabaikan terhadap waktu generasi atau ukuran dokumen. Di bawah lisensi berbayar, subsistem tidak melakukan pekerjaan apa pun. Anggaran kinerja halaman mencerminkan perenderan dokumentasi.

Branding evaluasi adalah penanda visibilitas, bukan kontrol keamanan. Ia menunjukkan keluaran evaluasi. Ia bukan tanda tangan digital dan tidak boleh diandalkan sebagai tanda tangan. Untuk keluaran yang bukti-rusak, gunakan kapabilitas penandatanganan yang dijelaskan dalam matriks fitur. Lisensi yang memilih mode branding adalah amplop bertanda tangan yang tanda tangan penerbitnya diverifikasi oleh runtime.

Subsistem branding menambahkan tanda air tetap dan penanda metadata; ia tidak membaca atau mengirimkan konten dokumen dan tidak melakukan panggilan jaringan.

Subsistem tidak mencatat konten dokumen. Transisi keadaan-lisensi yang mengubah mode branding dimunculkan melalui subsistem pelisensian, bukan di sini.

Tidak ada kesesuaian standar yang diklaim untuk halaman ini. Halaman ini hanya menjelaskan perilaku runtime. Halaman ini tidak menyatakan atau menyiratkan garansi, sertifikasi, atau kelayakan apa pun. Ketentuan evaluasi atau langganan Anda didefinisikan semata-mata oleh perjanjian lisensi Anda.

Modul ini tidak melakukan operasi kriptografi. Verifikasi tanda tangan lisensi ditangani oleh subsistem pelisensian.

Subsistem branding itu sendiri tidak memproses masukan eksternal apa pun di luar mode branding yang ter-resolve. Amplop lisensi yang memilih mode bertanda tangan dan tanda tangan penerbitnya diverifikasi oleh runtime; memalsukan mode akan memerlukan pemalsuan tanda tangan tersebut.

  • BrandingMode memiliki dua keadaan: None (baku; tanpa modifikasi keluaran) dan EvaluationWatermark.
  • Di bawah lisensi berbayar (non-evaluasi) modenya adalah None dan strategi null dipilih: keluaran identik dengan keluaran yang dihasilkan tanpa subsistem branding sama sekali.
  • Di bawah lisensi evaluasi, strategi menggambar tanda air diagonal dalam keadaan grafik terisolasi dan menambahkan penanda evaluasi ke metadata producer dan subject.
  • Objek konfigurasi bersifat imutabel dan memvalidasi masukannya (teks tanda air tidak-kosong, ukuran fon positif).

Halaman ini hanya mendokumentasikan perilaku yang dapat diamati secara eksternal dan permukaan API publik yang didukung. Path namespace internal, kelas pembantu, tabel mekanisme, nama berkas runbook, dan prefiks tiket berada di luar cakupan.

Subsistem branding disertakan dalam paket nextpdf/enterprise tetapi mengatur perilaku evaluasi di semua edisi, termasuk penerapan khusus-Core dan khusus-Pro yang menggunakan lisensi evaluasi. Tidak ada subsistem branding khusus-Core untuk dijadikan fallback; lisensi berbayar di edisi mana pun ter-resolve ke BrandingMode::None.

Tidak ada subsistem branding Pro yang terpisah. Subsistem branding nextpdf/enterprise yang sama mengatur perilaku evaluasi untuk penerapan Pro; lisensi Pro berbayar ter-resolve ke BrandingMode::None persis seperti lisensi Enterprise berbayar.

Detail mekanisme internal tetap berada dalam dokumentasi internal repositori sumber dan berada di luar cakupan manual ini.

Amplop lisensi yang memilih mode branding adalah artefak bertanda tangan yang tanda tangan penerbitnya diverifikasi oleh runtime; penyediaan lisensi, pembaruan, dan penyimpanan lisensi yang aman adalah tanggung jawab operator. Subsistem tidak melakukan panggilan jaringan dan tidak membaca konten dokumen.

Halaman ini hanya menjelaskan perilaku runtime. Halaman ini tidak menyatakan atau menyiratkan garansi, sertifikasi, atau kelayakan apa pun, dan bukan merupakan nasihat hukum. Ketentuan evaluasi atau langganan Anda — termasuk branding apa yang berlaku dan untuk berapa lama — didefinisikan semata-mata oleh perjanjian lisensi Anda. Konsultasikan perjanjian tersebut atau hubungi penjualan.