|
HotPDFは、外部PDF DLLを必要とせずにPDFドキュメントを生成する、DelphiおよびC++Builder向けのVCLコンポーネントライブラリです。メインのエントリポイントはTHotPDFクラスであり、ドキュメントの作成、ページへのアクセス、圧縮、メタデータ、セキュリティ、および出力ストリームを管理します。
一般的なワークフローには、テキストとベクターグラフィックスの描画、ビットマップとメタファイルコンテンツの埋め込み、TIFFおよびJPEG2000画像のインポート、ファイルの添付、ビューアーの環境設定、最終ドキュメントのパスワードと権限による保護、およびRC4-40 / RC4-128標準暗号化PDFのパスワードを使用した暗号化されていないロード済みドキュメント出力のための読み込みが含まれます。
現在のハイライト
- TIFF、JPEG2000、JBIG2、WMF、および EMF ワークフローの画像サポートの拡張。
- 組み込みの LZW サポート、zlib 互換モードの zlib-ng ベースの Flate 圧縮、64 ビット zlib-ng ランタイム SIMD ディスパッチ、および NASM SIMD オブジェクトアクセラレーションを備えた libjpeg-turbo 3.1.90 にバックアップされた標準 JPEG 処理。
- Win32 bcc32c/bcc32 OMF オブジェクト、Win64 COFF64 オブジェクト、および 32 バイトアライメントの C 割り当てを含む zlib-ng Win64x COFF オブジェクト向けの HPDFCLibs.pas での共有 C ランタイムブリッジング。
- ドキュメントの方向、印刷スケーリング、両面モード、ページ境界、初期ズーム動作などの、ビューアーおよび印刷環境設定の拡張。
- フォントの埋め込み、Unicode テキスト出力、および右から左へのテキストレンダリングの改善。
- PDF/A Level A 出力は、アーカイブの適合性に不可欠な Tagged PDF を有効にする一方で、PDF/UA-1 の識別を明示的な PDFUACompliance オプトインとして維持します。
- PDF/A-1、PDF/A-2、PDF/A-3、PDF/X-1a、PDF/X-3、PDF/X-4、および PDF/UA-1 ワークフローには、プロファイルを認識するプロデューサーゲート、メタデータ生成、該当する場合は OutputIntent のサポート、および veraPDF で検証された PDF/A-2A / PDF/A-3A のスモークカバレッジが含まれます。
- ViewerPreferences および埋め込みフォントの検証用に更新されたデモアプリケーション。
標準規格適合のポジショニング
- PDF/A のサポートは PDFACompliance を通じて公開されています。HotPDF は PDF/A メタデータ、プロファイルの制限、フォント埋め込みの強制、OutputIntent フック、および検証のスモークカバレッジを提供します。アプリケーションは引き続き、有効な ICC プロファイル、タイトル/言語の値、フォント、およびプロファイルに適切なコンテンツを提供します。
- PDF/UA のサポートは PDFUACompliance と Tagged PDF API を通じて公開されています。HotPDF はドキュメントレベルのラッパー、構造ツリー機構、ロールマッピング、マーク付きコンテンツヘルパー、ParentTree 配線、代替テキスト / ActualText ヘルパーを提供します。アプリケーションは引き続き、実際のセマンティック構造と読み取り順序を所有します。
- PDF/A Level A と PDF/UA-1 は別々の要求事項です。Level A はアーカイブの適合性に必要な Tagged PDF の基盤を有効にしますが、PDF/UA-1 XMP アイデンティティは PDFUACompliance が明示的に有効になっている場合にのみ出力されます。
ビルドおよびプラットフォームに関する注意事項
- Win32 ビルドは、Lib\thirdparty\Win32 に格納されている bcc32c で生成された zlib-ng OMF オブジェクトおよび bcc32 で生成された JPEG/TIFF OMF オブジェクトにリンクします。
- Win64 ビルドは、Lib\thirdparty\Win64 に格納されている COFF64 オブジェクトにリンクします。zlib-ng バックエンドは現在、Lib\thirdparty\Win64x に格納されている bcc64x で生成された COFF オブジェクトにリンクしています。
- ネイティブオブジェクトの再ビルドの検証は、クリーンな出力から合格します:206 の Win32 オブジェクト、205 の Win64x オブジェクト、および 206 の MSVC Win64 オブジェクト。
- HPDFOpenJpeg.pas ユニットは現在、インターフェイス層および拡張ポイントとして機能しています。完全なネイティブ OpenJPEG ランタイムバインディングとして扱わないでください。
診断
- 一般的なライブラリ診断は HotPDF.inc の withDEBUG によって制御され、有効な場合は HotPDF-Debug.log を書き込みます。
- ページコンテンツのマージトレースは PAGECONTENT_DEBUG_FILE によって個別に制御され、明示的に有効になっている場合にのみ PageContent_Debug.txt を書き込みます。
自動検証
- DユニットX Delphi 回帰スイートは、Tests\Delphi\Run-HotPDFDelphiTests.bat を通じて Win32 で 20 のテスト、Win64 で 20 のテストに合格しています。
- GoogleTest C++Builder 回帰スイートは、Tests\C++Builder\Run-HotPDFCBuilderTests.bat を通じて Win32 で 17 のテスト、Win64x で 17 のテストに合格しています。
- 自動化されたカバレッジは、生成されたメタデータ、Unicode と RTL テキスト、注釈、添付ファイル、標準的な JPEG 画像の配置、画像と TIFF のインポート、zlib-ng の Flate 圧縮、バーコード出力、メモリストリーム出力、ページ設定、暗号化、ハイパーリンク、段落、コピー/マージ/編集ワークフロー、表、グラフ、数値出力、メタファイル、および構造化されたレポートをテストします。
HotPDFは、レポート生成、技術文書、イメージングワークフロー、およびPDF出力の直接的なプログラム制御を必要とするその他のアプリケーションに適しています。
|