losLab ソフトウェア開発ブログ

HotPDF Delphi Component

Software Development Blog

HotPDF Delphi Component

Delphi HotPDF Hello World: 初めてのPDFプログラム

HotPDFを使用してDelphiで最初のPDFを作成します:Unicodeフォントを設定し、TextOutでテキストを描画し、圧縮ファイルを保存する最小限のコンソールHello Worldです

HotPDF Delphi Component

Delphiでドキュメント全体にTHotPDFインスタンスを再利用する

完了したTHotPDFを再利用するとドキュメント読み込みエラーがスローされる理由、Create、BeginDoc、EndDoc、Freeのライフサイクルの仕組み、および新しいインスタンスを構築するタイミングについて。 エラーは と表示され、ほぼ常に2回目に表示されます。最初のドキュメントは正常に書き込まれます

HotPDF Delphi Component

HotPDFを使用したDelphiでのPDFフォームの自動計算

HotPDFを使用して、DelphiでロードされたAcroFormにAcrobatのAFフォーマット、検証、および計算スクリプトを添付します。これにより、PDFフォームのフィールドで合計が自動計算され、日付が自動フォーマットされます

HotPDF Delphi Component

Delphi で読み込んだ PDF に AcroForm フィールドを追加する

HotPDF を使って、既存の PDF に Text、CheckBox、ComboBox、ListBox、PushButton、Signature フィールドを Delphi で追加する方法と、/NeedAppearances が必須である理由を解説します 第三者が用意した請求書テンプレートや、何年も前に誰ももう見つけ

HotPDF Delphi Component

HotPDFによるDelphiのバックグラウンドPDF描画キュー

HotPDFのバックグラウンド描画でDelphi PDFビューアの応答性を保つ仕組みを解説する:ページ描画をUIスレッド外でキューイングし、保留ページをキャンセルし、ビットマップをキャッシュする

HotPDF Delphi Component

DelphiのHotPDFで既存のPDFにブックマークを追加する方法

HotPDFを使用してDelphiで既存のPDFにブックマークと名前付きデスティネーションを追加する方法を解説:AddLoadedOutlineによるネスト、XYZデスティネーション、および/Countセマンティクスの罠 HotPDF は、Delphiで を介して既存のPDFにブックマークを追加することができます

HotPDF Delphi Component

HotPDFプリミティブを使用したPDFでのグラフの描画

HotPDFにはグラフオブジェクトがないため、DelphiのRectangle、LineTo、およびCircleを使用して、棒グラフ、折れ線グラフ、および円グラフを自分で描画します。ここには座標の計算とレイアウトがあります。 HotPDFにはグラフオブジェクトがありません。 も、

HotPDF Delphi Component

HotPDFを使用したDelphi PDFでのアラビア語およびRTLテキストのシェーピング

Delphi PDFでHotPDFがシェーピングするものとしないもの:双方向の並べ替え、アラビア語の結合、ヘブライ語からタイ語、デーヴァナーガリー文字までのカバレッジ、および出力の検証方法 アラビア語のフレーズ を に渡し、結果を開いてみてください。文字の向きが逆になり、それぞれの文字が孤立した形で、次の文字との間に目

HotPDF Delphi Component

DocMDPとFieldMDP: DelphiでのPDFリビジョン監査

HotPDFのAnalyzeLoadedSignatureRevisionsを使い、署名後のすべてのインクリメンタルPDFリビジョンを分類し、DelphiでDocMDPとFieldMDPに照らして採点する 署名後に変更された署名済みPDFは、自動的に壊れているわけではない。ISO

HotPDF Delphi Component

Delphiの動的XFAフォームランタイム:HotPDFのトランザクション

HotPDFのTXFAWidgetRuntimeでDelphiの動的XFAフォームを入力する方法を解説。スナップショットから検証、計算、再レイアウトまでを一つのトランザクションとして扱い、コミットの原子性、上限付きのパス予算、ホスト非依存のスレッドモデルを紹介します

HotPDF Delphi Component

DelphiでのECDSA PDF署名検証:DERからP1363へ

DelphiでCMS DER形式のECDSA署名をBCryptVerifySignature用のIEEE P1363形式へ変換する方法を解説する:厳格なrとsのデコード、曲線プロバイダ名、CMS署名者の照合を扱う

HotPDF Delphi Component

HotPDFでEMF/WMFベクターをDelphi PDFへ取り込む

HotPDFのEMF/WMFインタプリタは、GDIのグラデーション塗りつぶしをPDFの軸方向シェーディングに、ハッチブラシをタイリングパターンにマッピングし、Delphiのベクター出力を本物のまま保つ

HotPDF Delphi Component

HotPDFによるDelphiのEN 16931 Schematronルールエンジン

HotPDFはライセンス版XSLT 2.0プロセッサではなく、XPath 2.0チェックをスキップしDelphi 7ではスタブ化されるネイティブXPath 1.0エンジンでEN 16931 Schematronビジネスルールを検証する

HotPDF Delphi Component

Delphi で読み込んだ PDF から画像を抽出する: HotPDF

HotPDF ExtractLoadedImage を使って、Delphi で読み込んだ PDF から画像をデコードします。Flate、LZW、JPEG、JPEG 2000、Indexed、CMYK、CCITT、JBIG2 の各フィルターから TBitmap へ変換します。 ディスク上に PDF

HotPDF Delphi Component

HotPDFとFree Pascal・Lazarus:Win64サポートの限界

HotPDFはFree Pascal 3.2.2とLazarus 4.6上のWin64ビルドに対応。Delphiモードの条件、ネイティブコーデックオブジェクトがリンクできない理由、並列描画の逐次フォールバックの仕組みを解説します

HotPDF Delphi Component

HotPDFにおけるFree Pascal Win32のCシンボル装飾

Free PascalはWin32でcdeclインポートに先頭アンダースコアを付けますが、public nameのエクスポートは書いた通りに出力されます。HotPDFはDelphiを壊さずに両方の規約を1本のソースツリーで橋渡しします

HotPDF Delphi Component

Type 0サンプル関数を使用したPDFでの3DカラーLUT

PDF関数タイプ0は多次元補間テーブルだ。HotPDFがDelphiでこれを3DカラーLUTや特色の網点変換にどうラップして活用するのかを、実装の詳細とサンプルコードをまじえて解説する

HotPDF Delphi Component

DelphiのPDF Type 2/3/4関数:指数・PostScript

HotPDFがDelphiでPDF Type 2指数関数、Type 3ステッチング関数、Type 4 PostScript計算関数をどう評価するか、roll演算子や丸め処理の落とし穴を含めて解説する

HotPDF Delphi Component

HotPDFのrowspanグリッドと表ヘッダーの繰り返し

HotPDFのHTML表描画はrowspanに占有グリッドを使い、行の高さを実測し、改ページをまたいでヘッダー行を繰り返します。ヘッダーを繰り返さない2つのケースと、実測が描画と一致しなければならない理由を解説します

HotPDF Delphi Component

HotPDFでDelphiのPDF数値フォーマットをInvariantに保つ

Delphiで小数点カンマのロケールがPDFコンテンツストリームを壊す理由と、HotPDFがType 1フォント、SVG、FPCビルドにわたってInvariantな数値フォーマットを固定する方法を解説します

HotPDF Delphi Component

Delphi PDFでのネイティブJBIG2 2値画像圧縮

JBIG2は、スキャンした白黒ページのPDFサイズを最小化します。DelphiでHotPDFがJBIG2Decodeストリームを書き込み、エンコーダのバックエンドを組み込む方法を紹介します

HotPDF Delphi Component

DelphiでJBIG2シンボル辞書をページ間で共有する

HotPDFはDelphi PDF内のJBIG2シンボル辞書をページをまたいで一つの/JBIG2Globalsストリームにマージし、複数ページのスキャンで繰り返されるグリフの保存コストを削減する

HotPDF Delphi Component

HotPDF の PAdES LTV 証拠とシード値

HotPDF の 1 回の呼び出しで署名直後の PDF を B-B から B-LT へ引き上げ、AIA caIssuers でチェーンを補完し、フィールドが宣言するシード値を強制する方法を解説します

HotPDF Delphi Component

HotPDFでDelphiのNChannel特色インキ一貫性を保証する

HotPDFでISO 32000-2のNChannelカラースペースをDelphiから書く方法を解説。5要素DeviceN形式、特色ごとのSeparationティント、PDF/X-6nのカララント表検証、同一特色名の二重定義拒否までを扱います

HotPDF Delphi Component

PDF 署名のための Pure Pascal NIST 曲線演算

HotPDF が P-256、P-384、P-521、X25519、X448 を pure Pascal で実装する方法と、Montgomery 削減の 1 つの borrow 比較が 1 か月バグを隠し続けた経緯を解説します

HotPDF Delphi Component

Pure DelphiによるOpenType GSUBスタイリスティック代替

スタイリスティックセットと代替グリフはフォントのGSUBテーブルに存在します。HotPDFがHarfBuzzなしにsaltおよびss01〜ss20の置換をPure Delphiで解決する方法を解説します デザイナーは見出し用にシングルストーリーの を持つフォントを選んだり、表組み用にスラッシュゼロを使ったり、表紙用にス

HotPDF Delphi Component

HotPDFのCMYKオーバープリントプルーフとレンダーデバイス

HotPDFが読み込んだPDFページを1つのデバイス抽象化でビットマップ、プリンターHDC、メタファイルへ描画し、CMYKオーバープリントをプレスプルーフ用にシミュレートする仕組みを解説 HotPDFは読み込んだPDFページを単一のエントリポイント 経由でレンダリングし、渡されたデバイスが結果をビットマップにするか、プ

HotPDF Delphi Component

HotPDFでDelphiからPDFページをSVGへエクスポート

HotPDFはDelphiから読み込み済みPDFページをスタンドアロンのSVGに変換し、テキスト行列やページ回転、画像の反転、破線パターン、極細線のストロークを保持します

HotPDF Delphi Component

Delphiで検証するPDF MACリビジョン連鎖(ISO 32004)

HotPDFがISO/TS 32004のPDF MACリビジョン連鎖をDelphiで検証する方法を解説。リビジョンごとのプレフィックスストリーム検証、CMS署名との書き込み順序、認証済み権限ビットの扱いまでを紹介します

HotPDF Delphi Component

DelphiのHotPDFでPDF 2.0、PDF/A-4、PDF/UA-2を出力

HotPDFがDelphiからネイティブPDF 2.0を書き出し、PDF/A-4プロファイル、PDF/UA-2の構造名前空間、関連ファイル、EndDocの検査で壊れたツリーを捕捉する仕組みを解説

HotPDF Delphi Component

Delphi で HotPDF を使う PDF の墨消しと N-up 面付け

HotPDF のコンテンツストリーム演算子を使って、Delphi で読み込み済み PDF の領域を覆い隠し、N-up レイアウトを組み立てる方法と、守るべき墨消しの安全境界を解説する

HotPDF Delphi Component

DelphiでのSeparationおよびDeviceNスポットカラーのレンダリング

HotPDFを使用してDelphiでPDFのSeparationおよびDeviceNスポットカラーをレンダリングする方法を解説:色濃度変換関数、Type 4計算式、Lab白色点アダプテーション処理など HotPDF は、 を介して色空間を解決し、 を介して色濃度変換(Tint Transform)関数を計算し、代替色空

HotPDF Delphi Component

HotPDFでPDFページ内の回転QRコードをデコードする

HotPDFは読み込んだPDFページの回転QRシンボルを、スキャンマスクを回転させるのではなく、デコーダ内部でサンプリング済みモジュール行列をD4の8方向すべてに正規化してデコードします。バージョン検出や座標変換も解説します

HotPDF Delphi Component

Delphiで2つのPDFファイルを比較する:構造とピクセル

HotPDFはDelphiにおいて、カタログからオブジェクトグラフをたどる方法とレンダリングしたページを比較する方法の両方で2つのPDFファイルを比較し、両パスとも予算上限で範囲を制限します

HotPDF Delphi Component

HotPDF による Delphi での構造順 PDF テキスト抽出

HotPDF が構造ツリーを歩き MCID でグリフを再構築してタグ付き PDF のテキストを著述順に読み取る方法と、タグなしページへの安全なフォールバック設計を、ExtractLoadedPageStructureText の使い方とともに解説します

HotPDF Delphi Component

SVGを再利用可能なForm XObjectとしてPDFにインポート

HotPDFはDelphiでSVGアートワークを再利用可能なForm XObjectとしてPDFにインポートし、ベクターグラデーション・クリッピング・リンクを保持しつつ、スクリプトと外部参照を拒否する

HotPDF Delphi Component

HotPDFを使ったDelphiにおけるPDFテキストの両端揃え

両端揃えのPDFテキストにはスクリプト対応のスペーシングと高速な幅計測が必要です。HotPDFがDelphiでラテン語とCJKの行を揃え、GDIのラウンドトリップを削減する方法を解説します

HotPDF Delphi Component

Delphiでpage breakをまたぐtyped table

HotPDFのExtractLoadedTypedTablesがDelphiでloaded PDFのtableを再構築する方法を、column tolerance、page間continuation、typed valueの順に解説します

HotPDF Delphi Component

Delphi で描画時に欠落 PDF グリフを検出する

HotPDF はページの描画中に tofu として表示されることになるすべてのコードポイントを記録し、その欠落をスクリプト別のフォントフォールバックチェーンへ振り分けます。欠落グリフを顧客報告の前に潰し込む方法を解説します

HotPDF Delphi Component

HotPDFを使用してDelphiでPDFのデジタル署名を検証する

HotPDFを使用してDelphiでPDFのデジタル署名を検証:署名者情報の読み取り、ByteRangeバイトの再ハッシュ、CMS/RSA署名のチェック、およびsvValidが保証する内容について解説します HotPDFは、v2.259.0で導入された3つの メソッド、すなわち 、 、および

HotPDF Delphi Component

DelphiでPDF注釈をXFDFとして入出力する

HotPDFを使いDelphiでPDF注釈をXFDFとして書き出し、読み込みます。線、多角形、インク、内部色、リッチテキストのコメントをISO 19444-1で往復させます

HotPDF Delphi Component

DelphiでXPSとOpenXPSをPDFへ:座標とブラシ

HotPDFがDelphiでXPSとOpenXPSをPDFへ変換する仕組みを解説。96DPI固定ページ座標を通す0.75倍のページ行列、VisualBrushのForm XObject共有、ImageBrushのタイルパターン化、楕円グラデーションの処理を扱います

HotPDF Delphi Component

HotPDFを使用したDelphiでのPDF注釈: タイプと四角形

HotPDFを使用してDelphiでPDF注釈を追加します: テキストノート、フリーテキスト、四角形、およびスタンプ。四角形がそれぞれをどのように配置するか、およびAcroFormフィールドとどのように異なるか。 注釈はページコンテンツではありません。 を呼び出したり、四角形を描画したりすると、そのマークはページのコン

HotPDF Delphi Component

HotPDFのRtLTextOut: Delphiでの右から左へのPDFテキスト

Delphi用のHotPDF RtLTextOutリファレンス: シグネチャ、パラメータ、文字セット178/177のセットアップ、RegisterUnicodeTTF、実用的な例、および修正された一般的なRTLエラー アラビア語の文章 をプレーンな に送信すると、返ってくるページは一度に2つの点で間違っています