pdf_render_bitmap

ページをラスタライズして HSP 変数に書き込み

pdf_render_bitmap hid, page, scale, var_buf, var_w, var_h

hid    : ハンドル
page   : 0 オリジンのページ番号
scale  : 倍率 (1.0 で 72 dpi 相当、2.0 で 144 dpi)
var_buf: 書き込み先 HSP 変数 (sdim で十分なサイズ確保済み)
var_w  : 実際の出力幅 (ピクセル) を受け取る int 変数
var_h  : 実際の出力高さを受け取る int 変数

(プラグイン / モジュール : hsppdf.dll)

解説

ページを BGRA 32bit の生データとして var_buf に書き込みます。
必要なバイト数は out_w * out_h * 4。呼び出し前に
`sdim buf, expected_w * expected_h * 4` で十分なサイズを確保してください
(pdf_page_size で w,h を先に取ってから scale を掛けて計算)。

得られたバッファは HSP の sdim 変数に格納されているので、そのまま
iron_d2d1 で描画したり、独自に DIB に転送したり、画像ファイルとして
保存 (stb_image_write 等) することが可能です。

関連項目

pdf_render_to_hspwndページを現在の HSP window に直接描画(hsppdf.dll)
pdf_page_sizeページサイズを取得 (points)(hsppdf.dll)

情報

プラグイン / モジュールhsppdf.dll
バージョン1.0
作成日2026-04-15
著作者IronHSP / hsppdf
URLhttps://github.com/inovia/IronHSP
備考hsppdf.dll は Google PDFium (bblanchon/pdfium-binaries の prebuilt ~7 MB)
を embed した薄いプラグインです。HSP から PDF ファイルを開き、ページ数
の取得、ラスタライズ (ビットマップ化)、テキスト抽出、メタデータ参照が
できます。

PDFium 本体 (pdfium.dll) は別途 bblanchon のリリースから DL して
hsppdf.dll と同じディレクトリに配置する必要があります。詳しくは
plugins/win32/hsppdf/third_party/pdfium/README.md を参照してください。
プラグイン未配置時は stub として全関数が -100 / 空文字を返します。

HSP からは package/win32/common/iron_pdf.hsp を include して
pdf_open / pdf_draw / pdf_text 等の糖衣 API を使うのが推奨です。
本ヘルプは生 API の説明です。

ドキュメントハンドルは 16 並列まで同時に保持できます。使い終わった
ものは pdf_close で解放してください。

iron_ai との連携で PDF 要約を書く場合は、pdf_page_count で全ページ数を
取り、pdf_get_text を順に呼んで CP_ACP 文字列を結合してから
ai_chat / ai_complete に投げます (iron_ai 側で chunk 分割が必要な場合あり)。
タイプ拡張命令
グループhsppdf ― 描画
対応環境
  • その他 : Win32 / Win64
hs ファイルhsphelp\hsppdf.hs