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

Font descriptor key /FirstChar

`/FirstChar` キーは、PDF のフォント辞書内の整数エントリで、フォントの `Widths` 配列で定義される最初の文字の文字コードを指定します。

カテゴリ: Text & Fonts
キーワード: font descriptor key /firstchar, Font descriptor key /FirstChar

概要

/FirstChar キーは、PDF のフォント辞書内の整数エントリで、フォントの Widths 配列で定義される最初の文字の文字コードを指定します。 ( 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 ) で定義されているように、このキーは /LastChar と連携して、幅情報が提供される文字コードの範囲を確立します。これらのキーは、文字コードとフォントメトリクスに格納されている対応する幅の値との間のマッピングを作成します。

定義

/FirstChar は、Type 1 および TrueType フォント辞書における必須キーで、PDF が明示的な幅情報を提供する文字コード範囲の下限を定義します。このキーには、/Widths 配列で幅が指定される最初のグリフの文字コード(単純フォントの場合、通常は 0〜255 の範囲)を表す整数値が含まれます。/FirstChar の値は必ずしも 0 である必要はありません。フォントは任意の文字コードからメトリクスを定義できるため、PDF はドキュメント内で実際に使用される文字のサブセットのみを含めることができます。これは、文字コード範囲を定義するのではなく、フォント全体のメトリクスを記述する /Ascent/CapHeight などのフォント記述子キーとは異なります。

重要性

PDF 生成やテキスト抽出に取り組む開発者にとって、/FirstChar はテキスト幅と位置の正確な計算に不可欠です。テキストをレンダリングまたは測定する際、アプリケーションは /FirstChar をオフセットとして使用して /Widths 配列にインデックスを付ける必要があります。文字コード C の場合、幅は配列内の C - FirstChar の位置にあります。このオフセットを正しく処理しないと、文字幅が誤って計算され、テキストの配置ミス、バウンディングボックスの誤り、テキスト選択や抽出の失敗につながります。これは、フォントサブセットを扱う場合に特に重要です。/FirstChar が 32(スペース文字)などの値から始まることで、未使用の制御文字を除外し、正確なメトリクスを維持しながらファイルサイズを最適化できます。

仕組み

/FirstChar キーは、フォント辞書内の 3 つのコンポーネントシステムの一部として機能します。第一に、/FirstChar が開始文字コード(例:32)を指定します。第二に、/LastChar が終了文字コード(例:126)を指定します。第三に、/Widths 配列が /FirstChar から /LastChar までの各文字コードの幅の値を含みます(両端を含む)。配列は正確に (LastChar - FirstChar + 1) 個のエントリを含む必要があります。たとえば、/FirstChar が 65(ASCII ‘A’)で /LastChar が 67(ASCII ‘C’)の場合、/Widths 配列は文字 A、B、C に対応する正確に 3 つの幅の値を含む必要があります。PDF プロセッサが文字コード 66(‘B’)の幅を必要とする場合、配列インデックスを 66 - 65 = 1 として計算し、配列の位置 1 から幅を取得します。/FirstChar から /LastChar の範囲外の文字は、幅が未定義であり、フォント辞書または記述子の別の場所で指定されたデフォルトの幅を使用する場合があります。

関連用語

  • /LastChar – フォントの Widths 配列内の最後の文字の文字コードを定義し、定義された文字範囲の上限を作成します
  • /Widths – FirstChar からのオフセットによってインデックス付けされた文字幅の配列で、グリフレンダリングのメトリクスを含みます
  • Font dictionary(フォント辞書) – 文字メトリクス、エンコーディング、フォントプログラム参照を含むフォントメタデータを含む PDF 辞書オブジェクト
  • Character code(文字コード) – フォントのエンコーディングスキーム内の特定の文字を表す数値
  • Font descriptor(フォント記述子) – フォント全体に適用されるアセント、ディセント、フォントバウンディングボックスなどのフォントレベルのメトリクスを含む辞書

出典

(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