@ablogcms/pdf
v3.2.36
Published
PDF to image rendering engine and admin PDF preview controller for a-blog cms
Keywords
Readme
@ablogcms/pdf
管理画面で PDF をブラウザ側で画像化してプレビュー表示するための「変換エンジン」と、 記事内・メディアライブラリの PDF プレビュー DOM 配線を提供するパッケージ。
構成
.(Pdf2Image): pdfjs-dist を薄くラップし、ページ単位で canvas に描画して dataURL を返す、グローバル非依存の純粋なロジック層。./create-pdf(createPdf): File/Blob から指定ページの dataURL を生成するユーティリティ。./preview-controller(mountPdfPreview): 前後ページボタン付き PDF プレビュー要素を 1 件配線する DOM 層。./fetch-pdf-page(fetchPdfPage): URL・ページ単位でインスタンス/結果をキャッシュし、 同時リクエストを 1 本の処理へ合流させる関数。React に限らず利用できる。
特徴
window.ACMSへの直接参照を持たない。pdf.worker / cmaps の配布 URL や a-blog cms 本体固有のセレクタ名は、すべて呼び出し側が options 引数として注入する設計になっている。- pdf.worker / cmaps の配布方法(実ファイルをどこに置き、どう URL 解決するか)には関与しない。 受け取った URL をそのまま使うだけなので、特定のバンドラーの解決方式に依存しない。
- develop テーマ側の同種実装(
submodules/develop/themes/develop/src/js/lib/buildIn/pdf2image.js等)とも将来的に共通化できるよう、上記2点を満たす形にしている(実際の共通化は別スコープ)。 - DOM 配線層(
preview-controller)は lazy-load オーケストレーション自体を持たず、 呼び出し側(本体のbuilt-in/dispatch等)が要素単位で呼び出す前提のシンプルな関数。
