THPDFCABIFormDataFontV1

THPDFCABIFormDataFontV1 = function(UserData: Pointer;
  Family: PAnsiChar; FamilyLength: NativeUInt; Style: UInt32;
  FontIO: PHPDFCABIIOV1): Int32; cdecl;

実際のフォントプログラムについて、HPDF_STATUS_OK と完全なバージョン付きランダムアクセス読み取り IO テーブルを返します。Family は FamilyLength バイトの UTF-8 で、NUL 終端は保証されません

Style は 0 が regular、1 が bold、2 が italic、3 が boldItalic です。コールバックは実行スレッド上で同期実行され、実際にデコードされたフォームデータが使うファミリーとスタイルの組み合わせごとに 1 回要求されます。デフォルト regular フォントは常に要求されます

fontFamilies 付きの Windows forms.import 操作では、Family に、デコードされたリッチ内容が選んだ設定済み UTF-8 ラベルがそのまま入ります。ラベルの比較は ASCII では大小を無視し、その他の Unicode 文字は正確に行われます。使われない設定済みファミリーはフォントプログラムを要求しません

同じ V1 関数ポインターと IO レイアウトが、旧来の単一ファミリーと名前付きファミリーの両プロファイルに使われます。fontFamilies を省略すると、元の単一ファミリー選択が保たれます

元の型付きリッチ混在 forms.fill は、ネイティブ run が使う実際の設定済みファミリーとスタイルを、この同じコールバックを通じて要求します。フォントは候補を組み立てる前に有界な所有プログラムへコピーされ、フィールド間でファミリー/スタイルの確保が共有されます

StructSize、ABIVersion、Flags、UserData、ReadAt、GetSize を埋めてください。省略可能な IsCancelled もポーリングされます。返されたテーブルはコピーされますが、そのコールバック関数とユーザーデータは、外側の操作が返るまで有効でなければなりません

アダプターはサイズとバージョンを検証し、断片化されたフォントバイトを有界なチャンクで読み、フォントごとおよび合計の作業容量を強制し、再生成された AP リソースにそれらの実際のプログラムを使います

フォントコールバックやフォント IO のステータスがゼロ以外の場合、フォールバックを再試行せずに伝播します。無効または欠落したプログラムでは、アクティブなドキュメントは変更されません。不完全な IO で報告された成功もエラーのままです

省略可能な操作レコード、Windows 交換、元の型付きリッチ入力