GetTextBlockCharUnicodeFlags

テキスト、抽出、診断、Unicode

説明

選択ドキュメントのテキストブロック内の1文字について、Unicodeマッピングとフォールバックのフラグを返します

構文

Delphi

Function TPDFlib.GetTextBlockCharUnicodeFlags(TextBlockListID, Index, CharIndex: Integer): Integer;

パラメータ

TextBlockListIDExtractPageTextBlocksが返したハンドル
Index1始まりのテキストブロックインデックス
CharIndexブロックテキスト内の1始まりのUTF-16コード単位位置

戻り値

-1ハンドル、ブロックインデックスまたは文字インデックスが無効です
0 またはフラグ適用されるソースグリフマッピングがないか、結果に1つ以上のUnicode診断フラグが含まれます

フラグ

PDF_TEXT_CHAR_UNICODE_EXPLICIT文字は明示的な有効なToUnicodeマッピングから生成されました
PDF_TEXT_CHAR_UNICODE_FALLBACK文字はフォントエンコーディング、グリフ、CIDまたは生コードのフォールバックから生成されました
PDF_TEXT_CHAR_UNICODE_MISSING_TOUNICODEフォントにToUnicodeエントリがありません
PDF_TEXT_CHAR_UNICODE_UNMAPPED有効なToUnicode CMapにソースコードのマッピングがありません
PDF_TEXT_CHAR_UNICODE_INVALIDToUnicode CMapが使用不能か、選択されたマッピングが無効なUTF-16です
PDF_TEXT_CHAR_UNICODE_REPLACEMENT使用可能なフォールバックがないため、返されたテキストにU+FFFDが含まれます

備考

フォールバック結果は欠落・未マップ・無効の理由も併せ持つため、ビット単位のテストを使用してください

フラグは抽出時に保持され、ページコンテンツを再解析せずに定数時間で照会されます

補助Unicodeスカラーは2つのUTF-16位置を占め、両位置が同じフラグを持ちます