PDFium Delphi Component Docs

GenerateTaggedLayout メソッド

コンポーネント: TPdf  ·  ユニット: PDFium, FPdfLayout

構文

function GenerateTaggedLayout(Layout: TPdfLayoutDocument; out Plan: TPdfLayoutPlan; const Language: string = 'en-US'): Boolean;

説明

新しいレイアウトドキュメントを測定・出力し、連続 MCID をセマンティックページオブジェクトに割り当て、装飾コンテンツを Artifact としてマークし、構造階層を構築し、完成した Tagged PDF を同じ TPdf に再読み込みします

宛先は非アクティブであるか、ページが 0 である必要があります。そうすることで、すべての非アーティファクトオブジェクトが生成されたセマンティックプランでカバーされます

marked-content 機能を確認する前に PDFium を読み込むため、事前に CreateDocument を呼ばず、新しい TPdf の最初のネイティブ操作として実行できます

セマンティックモデル

AddText はデフォルトで plsrParagraph になり、ヘッダー、フッター、罫線、画像、ページ XObject、キャッシュノードはデフォルトで plsrArtifact になります

SetLastItemSemantics を呼び出して、見出し、セクション、分割、図、キャプション、リストロール、テーブルロール、代替テキスト、実テキスト、言語、ID、テーブルスコープ、スパン、ヘッダー ID を割り当てます

非視覚のリストとテーブルのコンテナには AddSemanticNode を使用し、ElementID と ParentID で子孫を接続します

タグ付きリンク

AddLink は測定済み URI テキストと Link 注釈を追加します

生成された注釈は必要に応じて間接オブジェクトに変換され、StructParent キーを受け取り、OBJR と ParentTree エントリを通じて Link 構造要素に関連付けられます

検証

測定パスは重複 ID、未解決の親、循環、不正なリストやテーブルの包含、代替テキストや実テキストのない図、不正なスパンとスコープ、未解決のテーブルヘッダー ID を拒否します

生成は暗号化出力、既存の構造ツリー、ページ数やオブジェクト数の不一致、重複 MCID、不完全な注釈マッピング、設定されたオブジェクト予算の超過を拒否します

結果

Plan は通常のレイアウトメトリックに加えて、セマンティック要素、親インデックス、MCID、リンク注釈インデックス、タグ付きコンテンツ数、アーティファクト数を含みます

完成したドキュメントは Document 構造要素、ParentTree、ID が存在する場合は IDTree、MarkInfo、ドキュメント言語、ページ StructParents、注釈付きページの構造ベースのタブ順序を持ちます

高度なテーブル

TPdfLayoutTableCell.AddTextRun は混在した書式のテキストを、抽出可能なネイティブテキストとして保持します。SetImage は元の table cell の下に代替テキスト付き Figure を生成します

AllowRowSpanContinuation=True では、1 つの TH または TD がページ別 MCR を通じてすべての物理断片を包含し、RowSpan、ColumnSpan、header 関係を保持します

小計行は body 行のまま、継続ラベルは Artifact になります。制約と上限は FPdfLayout を参照してください

関連項目

GenerateLayout, ValidatePdfUa, ReadableContent