Skip to main content
Interwork Corporation
IDR Solutions Product Support Portal
PDF開発用語集 モードの切替 ダーク/ライト/自動 モードの切替 ダーク/ライト/自動 モードの切替 ダーク/ライト/自動

PDType3Font

PDType3Fontは、Apache PDFBox PDModel APIにおいて、PDF文書内のType 3フォントを表現するクラスです。

キーワード: pdtype3font, PDType3Font

概要

PDType3Fontは、Apache PDFBox PDModel APIにおいて、PDF文書内のType 3フォントを表現するクラスです。Type 3フォントは、各グリフがPDFグラフィックスオペレータのシーケンスとして定義されるユーザー定義フォントであり、 ( Citation: N.A., (N.A.). (). Document management — Portable document format — Part 2: PDF 2.0 International Organization for Standardization Retrieved from https://www.iso.org/standard/75839.html ) で規定されているように、複雑な視覚効果やカスタム文字形状を実現できます。このクラスにより、開発者はPDFファイル内のType 3フォントリソースをプログラムで読み取り、操作、作成することが可能になります。

定義

PDType3Fontは、Apache PDFBoxのPDModel API階層内にある高レベルのJavaクラスで、Type 3フォントを専門的に扱います。事前定義されたフォントプログラムを参照するType 1フォントやTrueTypeフォントとは異なり、Type 3フォントはグリフをグラフィックスオペレータを含むPDFコンテンツストリームとして定義します。Type 3フォントの各文字は、本質的には塗りつぶし、ストローク、さらには画像を含むことができる描画命令を持つ小さなPDFページです。PDType3Fontクラスは、フォントメトリクス、文字定義、エンコーディング情報にアクセスするメソッドを提供すると同時に、低レベルのPDF辞書構造を抽象化します。このクラスは基底クラスであるPDSimpleFontを拡張し、レンダリングやテキスト抽出に必要なフォント固有の操作を実装しています。このクラスは、カスタムシンボル、フォントとして埋め込まれたロゴ、または標準フォント形式では実現できない特殊な組版効果を含むPDFを扱う際に特に重要です。

重要性

PDF文書を扱う開発者にとって、カスタムフォントや装飾フォントを含む文書を扱う際には、PDType3Fontの理解が不可欠です。Type 3フォントは、特殊なシンボルを含むフォーム、カスタム記法を含む技術文書、フォントがグラフィックスとして埋め込まれたレガシーPDFに頻繁に登場します。 ( Citation: N.A., (N.A.). (). Document management applications — Electronic document file format enhancement for accessibility — Part 1: Use of ISO 32000-1 (PDF/UA-1) International Organization for Standardization Retrieved from https://www.iso.org/standard/64599.html ) で説明されているテキスト抽出、レンダリング、またはPDF/UA準拠チェックを実装する際、開発者はType 3フォントを標準フォントとは異なる方法で処理する必要があります。これは、Type 3フォントには組み込みのUnicodeマッピングがなく、適切なアクセシビリティ情報を持たない可能性があるためです。PDType3Fontクラスは、グリフ定義の検査、フォントメタデータの抽出、アクセシビリティのための適切なToUnicodeマッピングの存在確認に必要なメソッドを提供します。さらに、プログラムでPDFを生成する際、このクラスにより開発者は標準フォントでは不十分な特殊なユースケース向けにカスタムフォント定義を作成できますが、結果として得られる文書がアクセシブルで標準準拠であることを保証するために慎重な配慮が必要です。

仕組み

PDType3Fontは、 ( Citation: N.A., (N.A.). (). Document management — Portable document format — Part 2: PDF 2.0 International Organization for Standardization Retrieved from https://www.iso.org/standard/75839.html ) で定義されている基礎となるPDF Type 3フォント辞書構造へのJavaインターフェースを提供することで機能します。PDFが読み込まれると、PDFBoxはフォント辞書を解析し、フォント行列、バウンディングボックス、文字プロシージャ(CharProcs)、エンコーディングなどのプロパティをカプセル化するPDType3Fontオブジェクトをインスタンス化します。Type 3フォントの各グリフは、CharProcs辞書内に個別のコンテンツストリームとして格納され、PDType3FontはgetCharProc(String name)のようなメソッドを通じてこれにアクセスできます。このクラスは、フォント行列を使用してフォント空間とユーザー空間の間の座標変換を処理し、フォントの幅配列を通じて幅情報を提供します。レンダリング時には、PDFプロセッサがグリフのコンテンツストリームを小さなPDFページであるかのように実行し、指定されたすべてのグラフィックス操作を適用します。開発者は、PDType3Fontを使用してエンコーディングスキーム(組み込みまたはカスタム)を取得し、適切なテキスト抽出のためのToUnicode CMapにアクセスし、個々のグリフ定義を調査できます。このクラスは、PDFBoxのリソース管理とも統合されており、Type 3フォントをページリソースに追加し、標準フォントオペレータを使用してコンテンツストリーム内で参照することができます。

関連用語

  • PDFont – Apache PDFBoxのPDModel APIにおけるすべてのフォントタイプの基底クラス
  • PDSimpleFont – Type 3フォントを含む、シングルバイト文字コードを持つフォントの親クラス
  • PDResources – フォント、画像、グラフィックス状態を含むPDFページリソースのコンテナクラス
  • Type 1 Font – PDFで一般的に使用される標準PostScriptフォント形式で、Type 3とは構造が異なる
  • ToUnicode CMap – テキスト抽出とアクセシビリティのために文字コードとUnicode値を関連付けるマッピングテーブル

出典

(N.A.) (2020)
(N.A.). (). Document management — Portable document format — Part 2: PDF 2.0 International Organization for Standardization Retrieved from https://www.iso.org/standard/75839.html
(N.A.) (2014)
(N.A.). (). Document management applications — Electronic document file format enhancement for accessibility — Part 1: Use of ISO 32000-1 (PDF/UA-1) International Organization for Standardization Retrieved from https://www.iso.org/standard/64599.html