Enterprise エディション
ブランディング
ブランディングサブシステムは、評価中に生成された PDF へ目に見える評価ブランディングを適用し、有料ライセンスの下では何も適用しません。これは nextpdf/enterprise パッケージで提供され、エディション全体にわたって評価の挙動を統制し、アプリケーションコードではなくライセンスによって完全に駆動されます。エンドツーエンドの評価ストーリーについては、トライアルと評価ブランディングを参照してください。このページでは、ブランディングサブシステム自体を説明します。
可用性とライセンス
「可用性とライセンス」という見出しのセクションこの機能は NextPDF Enterprise(nextpdf/enterprise)に同梱され、Enterprise ティアのライセンスエンベロープで有効化されます。そのエンタイトルメントを持たないデプロイメントは、この機能のクラスをロードしません。エディションを比較してライセンスを取得。
ほとんどの Enterprise サーフェスとは異なり、これは専用の機能コード enterprise.branding を持ちます。Core 専用および Pro 専用のデプロイメントを含む、すべてのエディションにわたって評価の挙動を統制するためです。ブランディングモードは、実行時に署名済みライセンスエンベロープから解決されます。それを選択するアプリケーションフラグはなく、いずれのエディションの有料ライセンスも BrandingMode::None に解決されます。
インストール
「インストール」という見出しのセクションcomposer require nextpdf/enterprise:^3概念の概要
「概念の概要」という見出しのセクションランタイムには、BrandingMode によってモデル化された 2 つの状態を持つブランディングモードがあります。
- None — 評価ブランディングなし。有料および通常の出力は決して変更されません。これがデフォルトです。
- EvaluationWatermark — 目に見える評価ブランディングが、生成された PDF に適用されます。
BrandingStrategyFactory は、モードをストラテジーにマッピングします。None には NullBrandingStrategy(何も行わず、いかなる変更も生成しません)、EvaluationWatermark には EvaluationBrandingStrategy です。モードを選択するのは、アプリケーションコードではなくライセンス状態です。有料ライセンスがブランディングされた出力を生成することは決してなく、切り替えるべき本番ビルドも、反転させるべきコードフラグもありません。
このページでは、ランタイムの挙動のみを説明します。保証や、資格または法的効果に関する記述は一切行いません。お客様の評価またはサブスクリプションに適用される条件は、お客様のライセンス契約によってのみ定められます。
API サーフェス
「API サーフェス」という見出しのセクション| 概念 | 挙動 |
|---|---|
BrandingMode | 2 つの状態: None(デフォルト、変更なし)または EvaluationWatermark。 |
BrandingStrategyFactory | BrandingMode をストラテジーに解決する。 |
EvaluationBrandingStrategy | 評価用透かしとメタデータ装飾を適用する。 |
NullBrandingStrategy | 有料 / 通常の出力向けの no-op ストラテジー。 |
EvaluationBrandingConfig | 不変の透かしテキスト、メタデータ装飾、フォントサイズ、グレーレベル、角度。 |
BrandingStrategy | 統合レイヤーが利用するコントラクト: isActive()、buildPageWatermark()、decorateProducer()、decorateSubject()。 |
BrandingApplicator | 解決されたストラテジーをレンダリング済み PDF バイトへ適用する。フェイルクローズド — アクティブなブランディングをマークできない場合は BrandingApplicationException をスローする。 |
このサブシステムは、ライセンスが解決したストラテジーを適用する統合レイヤー向けに、小さな呼び出し可能なサーフェスを公開します。アプリケーションコードがブランディングするかどうかを選択することはありません。以下のサンプルは、2 つのタッチポイントを示します。解決されたストラテジーの読み取りと、フェイルクローズドなアプリケーターによるレンダリング済みバイトのマークです。
コードサンプル — クイックスタート
「コードサンプル — クイックスタート」という見出しのセクションライセンスが選択したストラテジーを解決し、その挙動を読み取ります。有料ライセンスは BrandingMode::None に解決され、そのストラテジーは非アクティブで、すべての値を変更せずに通過させます。
<?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)コードサンプル — 本番
「コードサンプル — 本番」という見出しのセクションすでにレンダリング済みの PDF バイトを、ライセンスが解決したストラテジーでマークします。BrandingApplicator::apply() は、有料ライセンスでは入力を変更せずに返し、評価ライセンスでは、元のバイトをそのまま残したまま透かしとメタデータマーカーを追加します。アクティブなブランディングを安全に適用できない場合は BrandingApplicationException をスローします — これは終端として扱い、マークされていないバイトを決してコミットしないでください。
<?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; }}評価ブランディングが行うこと
「評価ブランディングが行うこと」という見出しのセクションアクティブなライセンスが EvaluationWatermark を選択すると、評価ストラテジーは次を行います。
- 各ページに薄いグレーの斜めの透かしテキストを描画します。これは、周囲のコンテンツやお客様のレイアウトを変更しないよう、分離されたグラフィックス状態でページコンテンツストリームとしてレンダリングされます。
- ドキュメントのプロデューサーメタデータに評価サフィックスを追加します。
- ドキュメントのサブジェクトメタデータに評価プレフィックスを先頭付与します。
透かしは、Base14 フォントと回転行列を使用して、テキストをページ中央を横切って斜めに配置します。構成オブジェクトは不変であり、その入力を検証します(たとえば、透かしテキストは空にできず、フォントサイズは正でなければなりません)。
有料ライセンスがブランディングを除去する仕組み
「有料ライセンスがブランディングを除去する仕組み」という見出しのセクション有料(非評価)ライセンスの下では、ブランディングモードは None であり、null ストラテジーが選択されます。透かしなし、プロデューサーサフィックスなし、サブジェクトプレフィックスなしです。出力は、ブランディングサブシステムがまったくない状態で生成された出力と同一です。評価ブランディングの除去にコード変更は不要です — 有料ライセンスをインストールすれば、次に生成されるドキュメントはブランディングされません。
エッジケースと注意点
「エッジケースと注意点」という見出しのセクション- ライセンス状態が評価スタイルのときにブランディングが現れます。これはライセンス状態を反映したものであり、不具合ではありません。ライセンスステータスを確認し、ライセンスポータルを通じて更新してください。
- 透かしは、評価出力が明確になるよう、設計上、中央かつ斜めです。本番向けにチューニングすることを意図したものではありません。有料ライセンスはそれを完全に除去します。
- プロデューサーおよびサブジェクトのメタデータは、評価中は評価マーカーを保持し、有料ライセンスの下では存在しません。
パフォーマンス
「パフォーマンス」という見出しのセクション透かしは、小さく固定されたページごとのコンテンツストリームであり、生成時間やドキュメントサイズへの影響はごくわずかです。有料ライセンスの下では、サブシステムは何も行いません。ページのパフォーマンス予算は、ドキュメントのレンダリングを反映しています。
セキュリティに関する注意
「セキュリティに関する注意」という見出しのセクション評価ブランディングは可視性マーカーであり、セキュリティ管理策ではありません。これは評価出力を示します。デジタル署名ではなく、署名として依拠してはなりません。改ざん検知性のある出力には、機能マトリクスで説明されている署名機能を使用してください。ブランディングモードを選択するライセンスは、発行者署名をランタイムが検証する署名済みエンベロープです。
データレジデンシーと PII の緩和策
「データレジデンシーと PII の緩和策」という見出しのセクションブランディングサブシステムは、固定された透かしとメタデータマーカーを追加します。ドキュメントコンテンツを読み取ったり送信したりすることはなく、ネットワーク呼び出しも行いません。
安全なテレメトリとログのスクラブ
「安全なテレメトリとログのスクラブ」という見出しのセクションサブシステムはドキュメントコンテンツをログに記録しません。ブランディングモードを変更するライセンス状態の遷移は、ここではなく、ライセンスサブシステムを通じて表面化されます。
このページについて、標準への適合は主張しません。ランタイムの挙動のみを説明します。いかなる保証、認証、または資格も記述または示唆しません。お客様の評価またはサブスクリプションの条件は、お客様のライセンス契約によってのみ定められます。
FIPS モードの挙動
「FIPS モードの挙動」という見出しのセクションこのモジュールは暗号操作を実行しません。ライセンス署名の検証は、ライセンスサブシステムが処理します。
脅威モデル
「脅威モデル」という見出しのセクションブランディングサブシステム自体は、解決されたブランディングモード以外の外部入力を処理しません。モードを選択するライセンスエンベロープは署名されており、その発行者署名はランタイムによって検証されます。モードを偽装するには、その署名を偽造する必要があります。
挙動コントラクト
「挙動コントラクト」という見出しのセクションBrandingModeには 2 つの状態があります:None(デフォルト。出力を変更しない)とEvaluationWatermark。- 有料(非評価)ライセンスの下では、モードは
Noneであり、null ストラテジーが選択されます。出力は、ブランディングサブシステムがまったくない状態で生成された出力と同一です。 - 評価ライセンスの下では、ストラテジーは分離されたグラフィックス状態で斜めの透かしを描画し、プロデューサーおよびサブジェクトのメタデータに評価マーカーを追加します。
- 構成オブジェクトは不変であり、その入力を検証します(透かしテキストは空でないこと、フォントサイズは正であること)。
公開の境界
「公開の境界」という見出しのセクションこのページでは、外部から観測できる挙動と、サポートされる公開 API サーフェスのみを説明します。内部の名前空間パス、ヘルパークラス、メカニズムの表、ランブックのファイル名、チケットプレフィックスは範囲外です。
Core フォールバック
「Core フォールバック」という見出しのセクションブランディングサブシステムは nextpdf/enterprise パッケージに同梱されていますが、評価ライセンスを使用する Core 専用および Pro 専用のデプロイメントを含め、すべてのエディションにわたって評価の挙動を統制します。フォールバックする Core 専用のブランディングサブシステムはありません。いずれのエディションでも、有料ライセンスは BrandingMode::None に解決されます。
Pro フォールバック
「Pro フォールバック」という見出しのセクション個別の Pro ブランディングサブシステムはありません。同じ nextpdf/enterprise ブランディングサブシステムが、Pro デプロイメントの評価の挙動を統制します。有料の Pro ライセンスは、有料の Enterprise ライセンスとまったく同様に BrandingMode::None に解決されます。
Enterprise の境界に関する注記
「Enterprise の境界に関する注記」という見出しのセクション内部のメカニズム詳細は、ソースリポジトリの内部ドキュメントにとどまり、この手引きの範囲外です。
デプロイメントの境界
「デプロイメントの境界」という見出しのセクションブランディングモードを選択するライセンスエンベロープは、発行者署名をランタイムが検証する署名済みアーティファクトです。ライセンスのプロビジョニング、更新、およびライセンスの安全な保管は、オペレーターの責任です。サブシステムはネットワーク呼び出しを行わず、ドキュメントコンテンツを読み取りません。
法令遵守の境界
「法令遵守の境界」という見出しのセクションこのページでは、ランタイムの挙動のみを説明します。いかなる保証、認証、または資格も記述または示唆せず、法的助言を構成するものでもありません。お客様の評価またはサブスクリプションの条件 — どのブランディングがどれだけの期間適用されるかを含む — は、お客様のライセンス契約によってのみ定められます。その契約をご確認いただくか、営業担当者にお問い合わせください。
- ブランディング — 詳細リファレンス — このサブシステムの公開 API と挙動コントラクト。
- トライアルと評価ブランディング — エンドツーエンドの評価ストーリー。
- ライセンスのアクティベーション
- Enterprise の概要
- Core・Pro・Enterprise の機能マトリクス