Conversion encoding
Conversion encodingは、PDF文書において、フォントのネイティブエンコーディングからUnicode値への文字コードのマッピングに使用される仕組みであり、適切なテキスト抽出とアクセシビリティを実現します。
Conversion encodingは、PDF文書において、フォントのネイティブエンコーディングからUnicode値への文字コードのマッピングに使用される仕組みであり、適切なテキスト抽出とアクセシビリティを実現します。このマッピングは、カスタムエンコーディングや非標準エンコーディングを使用するフォントを扱う際に特に重要です。これにより、支援技術や検索機能がテキストコンテンツを正しく解釈できるようになります ( Citation: N.A., 2020 (N.A.). (2020). Document management — Portable document format — Part 2: PDF 2.0 . International Organization for Standardization Retrieved from https://www.iso.org/standard/75839.html ) 。Conversion encodingは、PDF/UAなどの標準に準拠したアクセシブルなPDFを作成する上で重要な役割を果たします ( Citation: N.A., 2014 (N.A.). (2014). 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 ) 。
Conversion encodingとは、PDF内のデータ構造であり、フォントが使用する文字コードをUnicode文字コードに変換する方法を定義します。文字コードが固有の意味を持つ直接エンコーディング方式とは異なり、conversion encodingは、フォントの内部文字識別システムと標準化されたUnicode値との間を変換する明示的なマッピングテーブルを提供します。これは、フォントの内部エンコーディング(WinAnsiEncodingやMacRomanEncodingなど)とは異なります。内部エンコーディングはバイトがグリフにどのようにマッピングされるかを定義しますが、conversion encodingはより高いレベルで動作し、これらのグリフがテキスト処理の目的において正しい意味的な文字に対応することを保証します。
PDF文書では、conversion encodingは通常、ToUnicode CMap(Character Map)を通じて実装されます。これは文字からUnicodeへのマッピングを提供する埋め込みストリームです。このメカニズムは、標準エンコーディングを使用しないフォントや、文字コードがUnicode値に直接対応しない複合フォント(CJKフォントなど)にとって不可欠です。
PDF生成、抽出、またはアクセシビリティ機能に取り組む開発者にとって、conversion encodingを理解することは以下の理由から極めて重要です。
テキスト抽出の精度: 適切なconversion encodingがないと、PDFからのテキスト抽出で文字化けや誤った文字が生成され、検索機能やコンテンツの再利用機能が損なわれます。これは、カスタムフォントやシンボルフォントを扱う際に特に問題となります。
アクセシビリティ準拠: PDF/UAやその他のアクセシビリティ標準では、スクリーンリーダーや支援技術がコンテンツを正しく音声化できるように、すべてのテキストコンテンツが適切にエンコードされている必要があります ( Citation: N.A., 2014 (N.A.). (2014). 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 ) 。Conversion encodingが欠落していたり誤っていたりすると、障害のあるユーザーにとって克服不可能な障壁が生じます。
検索とインデックス作成: 検索エンジンや文書管理システムは、PDFコンテンツを正確にインデックス化するためにconversion encodingに依存しています。適切なエンコーディングのないPDFは、効果的に検索やカタログ化ができません。
クロスプラットフォーム互換性: Conversion encodingは、特定のフォントがシステムにインストールされているかどうかに関係なく、異なるプラットフォーム、ビューア、処理ツール間でテキストがその意味を維持することを保証します。
Conversion encodingは、以下の技術的プロセスを通じて動作します。
文字コードマッピング: PDFレンダリングエンジンがテキストに遭遇すると、コンテンツストリームから文字コードを読み取ります。各文字コードに対して、エンジンはフォントのエンコーディングを参照してどのグリフを描画するかを決定します。それとは別に、ToUnicode CMapをチェックして、その文字コードが表すUnicode値を判断します。
ToUnicode CMAPの構造: ToUnicode CMAPは、文字コード(シングルバイトまたはマルチバイト)をUnicodeスカラー値にマッピングする特殊なタイプのCMAPです。このCMAPはPostScript CMap構文に従い、効率性のために個別の文字マッピングと文字範囲の両方を定義できます。CMAPはPDF内にストリームオブジェクトとして埋め込まれ、フォント辞書から参照されます ( Citation: N.A., 2020 (N.A.). (2020). Document management — Portable document format — Part 2: PDF 2.0 . International Organization for Standardization Retrieved from https://www.iso.org/standard/75839.html ) 。
フォールバックメカニズム: ToUnicode CMAPが存在しない場合、PDFプロセッサはフォントの標準エンコーディングや組み込みエンコーディングテーブルを使用してUnicode値を推測しようと試みることがあります。しかし、このフォールバックはカスタムフォント、シンボルフォント、または複合フォントには信頼性がないため、堅牢なテキスト処理には明示的なconversion encodingが不可欠です。
Tagged PDFとの統合: Tagged PDF文書では、適切なconversion encodingは文書構造ツリーと連携して、コンテンツが視覚的に正しくレンダリングされ、かつ意味的に意味のあるものになることを保証します ( Citation: PDF Association, 2023 PDF Association(2023). Retrieved from https://pdfa.org/resource/tagged-pdf-best-practice-guide-syntax/ ) 。論理構造は、読み順序とコンテンツの関係を維持するために、正確なUnicode表現に依存しています。
- Character Encoding – バイトまたは文字コードを文字セット内の特定の文字にマッピングするシステム
- ToUnicode CMap – 文字コードからUnicode値へのマッピングを提供する特定のタイプのCMap
- Font Encoding – PDFコンテンツストリーム内のバイト値がフォント内のグリフにどのようにマッピングされるかを定義するスキーム
- Tagged PDF – 論理的な文書構造と意味情報を含むPDF構造であり、適切なテキストエンコーディングに依存する
- Glyph – 文字の視覚的表現であり、フォントのエンコーディングに応じて異なる文字コードにマッピングされる場合がある
- (N.A.) (2020)
- (N.A.). (2020). 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)
- PDF Association(2023). Retrieved from https://pdfa.org/resource/tagged-pdf-best-practice-guide-syntax/
- (N.A.) (2014)
- (N.A.). (2014). 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
