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

Character map

Character map(文字マップ)は、PDFファイル内の数値文字コードと、実際に表示されるべきグリフ(文字の形状)またはそれらが表すUnicode値との関係を定義します。

カテゴリ: Text & Fonts
キーワード: character map, Character map

概要

Character map(文字マップ)は、PDFファイル内の数値文字コードと、実際に表示されるべきグリフ(文字の形状)またはそれらが表すUnicode値との関係を定義します。Character mapは、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 ) 。これらは、エンコーディング辞書、複雑なスクリプト用のCMap、またはUnicodeへの変換を可能にするToUnicodeマッピングを通じて実装されます。

定義

Character mapは、PDFフォントが内部で使用する数値コードと、グリフ識別子またはUnicode文字値のいずれかとの間で変換を行うルックアップ機構です。バイトと文字の間の1対1のマッピングを提供する単純な文字エンコーディングとは異なり、PDFのcharacter mapは、マルチバイト文字コード、複合フォント、双方向テキストなど、より複雑なシナリオに対応できます。PDF仕様は、3つの主要な文字マッピング機構をサポートしています:組み込みエンコーディング(WinAnsiEncodingやMacRomanEncodingなど)、アジア言語などの複雑なスクリプトに使用されるCID鍵付きフォント用のCMapリソース、そしてUnicodeコードポイントへの明示的なマッピングを提供するToUnicode CMap ( 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 ) です。ToUnicodeマッピングは、支援技術がテキストコンテンツを正確に解釈できるようにするため、アクセシビリティ機能において特に重要です ( 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 )

重要性

Character mapは、開発者がサポートしなければならないいくつかの重要なPDF操作の基盤となります。適切な文字マッピングがなければ、テキスト抽出は文字化けを返すか完全に失敗し、コンテンツのインデックス作成や検索が不可能になります。アクセシビリティ準拠のためには、character mapは必須です。スクリーンリーダーやその他の支援技術は、視覚的なグリフを音声で読み上げたり点字デバイスに表示したりできる意味のあるテキストに変換するために、ToUnicodeマッピングに依存しています ( 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を生成する際、開発者は適切なcharacter mapが含まれていることを確認する必要があります。特に、カスタムフォントの使用、フォントのサブセット化、国際言語のサポートを行う場合に重要です。PDFにおけるテキスト関連の問題のデバッグでは、ほとんど常にcharacter mapが存在し、正しく設定されていることを検証する作業が含まれるため、この知識はPDFライブラリの統合とトラブルシューティングに不可欠です。

仕組み

PDFにおける文字マッピングは、フォントタイプと要件に応じて複数のレベルで動作します。単純フォント(Type 1、TrueType)の場合、フォント辞書のEncodingエントリが、シングルバイト文字コードがグリフ名にどのようにマッピングされるかを指定し、それらは実際のグリフ形状に解決されます。開発者は、事前定義されたエンコーディングを参照するか、Differences配列を持つカスタムEncoding辞書を提供して特定のマッピングを上書きできます。CJK言語で一般的に使用される複合フォント(Type 0)の場合、CMapリソースがマルチバイト文字コードを文字識別子(CID)にマッピングする方法を定義し、その後、別のCIDFont構造を通じてグリフを参照します。ToUnicodeエントリは、単純フォントと複合フォントの両方で利用可能で、文字コードをUnicode値に直接マッピングするCMapを含んでいます。これはPostScriptのようなストリームとして実装され、個別のマッピングまたはマッピングの範囲を定義するbegbfcharおよびbegbfrange演算子を持っています ( 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レンダリングエンジンはまずフォントのencodingまたはCMapを使用して描画するグリフを決定し、次にテキストを抽出したりアクセシビリティ機能で利用可能にする必要がある場合にToUnicodeマップを参照します ( Citation: , (). Retrieved from https://pdfa.org/resource/tagged-pdf-best-practice-guide-syntax/ )

関連用語

  • CMap – 複雑なスクリプトと大規模な文字セットを処理するためにCID鍵付きフォントで使用される特定のタイプのcharacter map
  • Encoding – 単純フォントで使用される文字からグリフへのマッピングスキームで、事前定義またはカスタムが可能
  • ToUnicode – テキスト抽出とアクセシビリティのために、文字コードからUnicode値への明示的なマッピングを提供する特別なCMap
  • Glyph – 文字の視覚的表現で、character mapのルックアップに基づいてレンダリングされるもの
  • CID Font – 文字識別子を使用し、文字マッピングのためにCMapリソースを必要とするフォントタイプ

出典

(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
PDF Association (2023)
(). Retrieved from https://pdfa.org/resource/tagged-pdf-best-practice-guide-syntax/
(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