PDF スキル は何をしますか?
使用するタイミング
- レイアウトやビジュアルが重要な PDF コンテンツを読んだりレビューする場合。
- 信頼性の高いフォーマットでプログラム的に PDF を作成する場合。
- 納品前に最終的なレンダリングを検証する場合。
ワークフロー
- 視覚的なレビューを優先: PDF ページを PNG にレンダリングして検査します。
pdftoppmが利用可能な場合はそれを使用します。- 利用できない場合は、Poppler をインストールするか、ユーザーにローカルで出力をレビューしてもらいます。
- 新しいドキュメントを作成する際は
reportlabを使用して PDF を生成します。 - テキスト抽出や簡易チェックには
pdfplumber(またはpypdf)を使用します。レイアウトの忠実性を確認する目的では使用しないでください。 - 意味のある更新のたびに、ページを再レンダリングし、配置、間隔、読みやすさを確認します。
テンポラリファイルと出力先の規則
- 中間ファイルには
tmp/pdfs/を使用し、処理が完了したら削除します。 - このリポジトリ内で作業する場合は、最終成果物を
output/pdf/に書き込みます。 - ファイル名は安定し、かつ説明的なものに保ちます。
依存関係(不足している場合はインストール)
依存関係の管理には uv を推奨します。
Python パッケージ:
uv pip install reportlab pdfplumber pypdf
uv が利用できない場合:
python3 -m pip install reportlab pdfplumber pypdf
システムツール(レンダリング用):
# macOS (Homebrew)
brew install poppler
# Ubuntu/Debian
sudo apt-get install -y poppler-utils
この環境でインストールが不可能な場合は、不足している依存関係とそのローカルでのインストール方法をユーザーに伝えてください。
環境
必須の環境変数はありません。
レンダリングコマンド
pdftoppm -png $INPUT_PDF $OUTPUT_PREFIX
品質基準
- 洗練されたビジュアルデザインを維持: 一貫したタイポグラフィ、間隔、マージン、セクション階層。
- レンダリングの問題を回避: テキストのクリッピング、要素の重なり、テーブルの破損、黒い四角、読めないグリフなど。
- チャート、テーブル、画像は鮮明で、位置が揃い、明確にラベル付けされていること。
- ASCII ハイフンのみを使用。U+2011(改行しないハイフン)やその他の Unicode ダッシュは避けてください。
- 引用と参考文献は人間が読める形式にすること。ツールトークンやプレースホルダー文字列を残さないでください。
最終確認
- 最新の PNG 検査で視覚的またはフォーマット上の欠陥がゼロであることを確認するまでは納品しないでください。
- ヘッダー/フッター、ページ番号、セクション間の遷移が洗練されていることを確認します。
- 中間ファイルは整理された状態に保つか、最終承認後に削除します。