
Pdf Vision Reader
- 372 installs
- Updated January 23, 2026
- childbamboo/claude-code-marketplace-sample
pdf-vision-reader is a Claude Code marketplace sample skill that lets coding agents read and interpret PDF documents through vision-capable models so developers can query specs, manuals, and reports without manual copy-p
About
Renders PDF pages to images with pdf2image so visual content like diagrams and charts can be analyzed and summarized in Markdown. Used when a developer reads PDFs with rich visual content that text extraction misses.
- PDF pages to images via pdf2image and poppler
- Vision analysis of charts and diagrams
Pdf Vision Reader by the numbers
- 372 all-time installs (skills.sh)
- Ranked #175 of 688 Office & Documents skills by installs in the Skillselion catalog
- Data as of Jul 28, 2026 (Skillselion catalog sync)
npx skills add https://github.com/childbamboo/claude-code-marketplace-sample --skill pdf-vision-readerAdd your badge
Show developers this skill is listed on Skillselion. Paste this into your README.
| Installs | 372 |
|---|---|
| Last updated | January 23, 2026 |
| Repository | childbamboo/claude-code-marketplace-sample ↗ |
How do agents read PDF specs with vision?
Convert PDF pages to images and use vision analysis to extract diagrams, charts, and visual content into Markdown.
Who is it for?
Developers who store requirements, API manuals, or architecture docs as PDFs and want agents to read them directly in Claude Code sessions.
Skip if: Teams with documentation already in markdown or HTML repositories where standard file reads outperform vision-based PDF parsing.
When should I use this skill?
A developer uploads or references a PDF specification, manual, or report and asks the agent to read, summarize, or implement requirements from the document.
What you get
Extracted PDF text, table data, and diagram interpretations available for agent reasoning and implementation tasks.
- Extracted PDF content
- Structured requirement notes
- Document summaries for agent context
Files
PDF Vision Reader
図表が多い PDF を画像化して、Claude の vision 機能で内容を解析・Markdown 化するスキルです。
クイックスタート
基本的な使い方
# 1. PDF を画像に変換
wsl python3 scripts/pdf_to_images.py "/mnt/c/path/to/file.pdf"
# 2. 各画像を Read ツールで読み込んで解析
# 3. Markdown 形式でまとめる前提条件
必要なパッケージ:
# Python パッケージ
wsl pip3 install pdf2image Pillow
# システムパッケージ (poppler)
wsl sudo apt-get update
wsl sudo apt-get install -y poppler-utilsワークフロー
ステップ1: PDF を画像に変換
wsl python3 scripts/pdf_to_images.py "/mnt/c/path/to/document.pdf"これにより document_pages/ ディレクトリが作成され、各ページが画像として保存されます:
page_001.pngpage_002.pngpage_003.png- ...
ステップ2: 各画像を解析
Read ツールで各画像を順番に読み込み、内容を解析します。
解析時の指示例:
この画像の内容を詳しく説明してください:
- タイトルや見出し
- 本文テキスト
- 図表の説明
- グラフやチャートのデータ
- 重要なポイントステップ3: Markdown に統合
各ページの解析結果を統合して、一つの Markdown ファイルを作成します。
使用例
例1: プレゼンテーション資料を Markdown 化
User: "presentation.pdf を vision で解析して Markdown 化して"
Assistant:
1. scripts/pdf_to_images.py で PDF を画像に変換
2. 各画像を Read ツールで読み込み
3. 各ページの内容を解析(タイトル、図表、テキスト)
4. 全ページの解析結果を統合
5. Write ツールで Markdown ファイルに保存例2: 特定のページのみ解析
User: "document.pdf の 5-10 ページだけ解析して"
Assistant:
1. PDF を画像に変換(全ページ)
2. page_005.png から page_010.png のみ Read で読み込み
3. 該当ページの内容を Markdown 化解析の観点
自動的に抽出する情報
各ページの画像から以下を抽出:
1. テキスト情報
- タイトル・見出し
- 本文テキスト
- 箇条書きリスト
- 注釈・キャプション
2. 図表
- 図の種類(フローチャート、組織図、etc.)
- 図の説明・要約
- 主要な要素と関係性
3. グラフ・チャート
- グラフの種類(棒グラフ、円グラフ、etc.)
- 軸ラベル
- 主要なデータポイント
- トレンドや傾向
4. テーブル
- テーブルの構造
- ヘッダー行
- データの内容
- Markdown テーブル形式に変換
5. レイアウト・構造
- ページ全体のレイアウト
- セクション分け
- 強調されている情報
Markdown 出力フォーマット
# [PDFタイトル]
**解析日時:** YYYY-MM-DD
**総ページ数:** N
---
## Page 1: [ページタイトル]
### 概要
[ページの概要説明]
### 主要な内容
- [ポイント1]
- [ポイント2]
### 図表
**図1: [図のタイトル]**
[図の説明]
### テキスト内容
[ページ内のテキスト]
---
## Page 2: [ページタイトル]
...スクリプト詳細
pdf_to_images.py
機能:
- PDF の各ページを PNG 画像に変換
- 解像度指定可能(デフォルト: 200 DPI)
- 出力ディレクトリの自動作成
使い方:
python scripts/pdf_to_images.py <pdf_path> [output_dir] [dpi]
# 例
python scripts/pdf_to_images.py document.pdf ./images 300出力:
[pdf_name]_pages/page_001.png[pdf_name]_pages/page_002.png- ...
対応可能なコンテンツ
- ✅ テキスト(日本語・英語)
- ✅ 図表・ダイアグラム
- ✅ グラフ・チャート
- ✅ テーブル
- ✅ スクリーンショット
- ✅ インフォグラフィック
- ✅ 複雑なレイアウト
- ⚠️ 手書きメモ(精度は状況による)
- ⚠️ 低解像度画像(精度低下の可能性)
テキスト抽出との違い
pdf-reader (テキスト抽出)
- ✅ テキストのみの PDF で高速
- ✅ 純粋なテキスト抽出
- ❌ 図表は抽出不可
- ❌ レイアウトは簡略化
pdf-vision-reader (画像解析)
- ✅ 図表・グラフを理解
- ✅ 複雑なレイアウトを保持
- ✅ ビジュアル要素の説明
- ⚠️ 処理時間が長い
- ⚠️ API コスト(画像解析)
推奨される使い分け
| PDF の種類 | 推奨スキル |
|---|---|
| テキスト中心の文書 | pdf-reader |
| プレゼンテーション資料 | pdf-vision-reader |
| 図表・グラフが多い資料 | pdf-vision-reader |
| 技術図面・設計書 | pdf-vision-reader |
| 論文(図表含む) | pdf-vision-reader |
| 単純なテキストPDF | pdf-reader |
トラブルシューティング
pdf2image が見つからない
wsl pip3 install pdf2imagepoppler-utils が見つからない
wsl sudo apt-get update
wsl sudo apt-get install -y poppler-utils画像変換が失敗する
- PDF が破損していないか確認
- ディスク容量を確認
- メモリ不足の可能性(大きな PDF は分割処理)
解析精度が低い
- DPI を上げる(300 推奨)
python scripts/pdf_to_images.py document.pdf ./images 300- 元の PDF の画質を確認
パフォーマンス
処理時間の目安
| ページ数 | 画像変換 | 解析(Claude vision) | 合計 |
|---|---|---|---|
| 10ページ | 5秒 | 30-60秒 | ~1分 |
| 30ページ | 15秒 | 90-180秒 | ~3分 |
| 100ページ | 50秒 | 300-600秒 | ~10分 |
最適化のヒント
1. 必要なページのみ処理
- 全ページ変換後、重要なページのみ解析
2. DPI の調整
- 図表が多い: 300 DPI
- テキスト中心: 150-200 DPI
3. バッチ処理
- 複数 PDF を並行処理しない(順次処理)
パス変換
Windows パスから WSL パスへの変換:
C:\Users\...→/mnt/c/Users/...D:\Projects\...→/mnt/d/Projects/...
関連ツール
- pdf-reader: テキスト中心の PDF 用
- docx-reader: Word 文書用
- OCR ツール: pytesseract(テキスト特化)
バージョン履歴
- v1.0.0 (2026-01-06): 初期リリース
- PDF → 画像変換機能
- Vision ベースの解析ワークフロー
- 図表・グラフの理解対応
- Markdown 出力フォーマット
PDF Vision Reader Skill
図表が多い PDF を画像化して、Claude の vision 機能で内容を解析・Markdown 化するスキルです。
ファイル構成
pdf-vision-reader/
├── SKILL.md # メインスキル定義(Claude が読む)
├── README.md # このファイル(人間向けドキュメント)
└── scripts/
└── pdf_to_images.py # PDF → 画像変換スクリプトインストール
前提条件
- WSL (Windows Subsystem for Linux)
- Python 3.x
- pdf2image パッケージ
- poppler-utils(システムパッケージ)
セットアップ
# Python パッケージのインストール
wsl pip3 install pdf2image Pillow
# poppler-utils のインストール
wsl sudo apt-get update
wsl sudo apt-get install -y poppler-utils使い方
Claude に以下のように依頼します:
「presentation.pdf を vision で解析して Markdown 化して」Claude が自動的に: 1. PDF を各ページの画像に変換 2. 各画像を Claude の vision 機能で解析 3. タイトル、図表、グラフ、テキストを抽出 4. Markdown 形式で構造化 5. 結果をファイルに保存
ワークフロー
ステップ1: PDF を画像に変換
wsl python3 scripts/pdf_to_images.py "/mnt/c/path/to/document.pdf"出力例:
document_pages/
├── page_001.png
├── page_002.png
├── page_003.png
└── ...ステップ2: 各画像を解析
Claude が Read ツールで各画像を読み込み、以下を抽出:
- タイトルと見出し
- 本文テキスト
- 図表の説明
- グラフやチャートのデータ
- テーブルの内容
ステップ3: Markdown に統合
全ページの解析結果を統合して、一つの Markdown ファイルを作成。
機能
対応コンテンツ
- ✅ テキスト(日本語・英語)
- ✅ 図表・ダイアグラム(フローチャート、組織図など)
- ✅ グラフ・チャート(棒グラフ、円グラフなど)
- ✅ テーブル(Markdown テーブルに変換)
- ✅ スクリーンショット
- ✅ インフォグラフィック
- ✅ 複雑なレイアウト
抽出される情報
1. テキスト情報
- タイトル、見出し
- 本文、箇条書き
- 注釈、キャプション
2. ビジュアル要素
- 図の種類と説明
- グラフのデータとトレンド
- テーブルの構造と内容
- レイアウトと強調箇所
出力例
# プレゼンテーションタイトル
**解析日時:** 2026-01-06
**総ページ数:** 10
---
## Page 1: イントロダクション
### 概要
このページは全体の概要を説明するタイトルスライドです。
### 主要な内容
- プロジェクト名:AI-Driven Bootcamp
- 対象:新入社員向け研修プログラム
- 期間:2026年度
---
## Page 2: 市場分析
### 概要
市場規模の推移を示すグラフが中心のページ。
### 図表
**図1: 市場規模の推移(2020-2025)**
- 棒グラフで年次推移を表示
- 2020年: 100億円
- 2025年: 500億円(予測)
- 年平均成長率: 38%
### テキスト内容
市場は急速に拡大しており、今後5年間で5倍の成長が見込まれる。pdf-reader との比較
pdf-reader (テキスト抽出)
メリット:
- 高速処理
- 低コスト
- テキストの正確な抽出
デメリット:
- 図表は抽出不可
- レイアウトは失われる
- ビジュアル要素は無視
pdf-vision-reader (画像解析)
メリット:
- 図表・グラフを理解
- 複雑なレイアウトを保持
- ビジュアル要素の説明
- プレゼン資料に最適
デメリット:
- 処理時間が長い
- API コスト(画像解析)
- テキストの精度はやや低い
使い分けガイド
| PDF の種類 | 推奨スキル | 理由 |
|---|---|---|
| 契約書、規約 | pdf-reader | テキスト中心 |
| 論文(図表なし) | pdf-reader | テキスト中心 |
| プレゼン資料 | pdf-vision-reader | 図表・ビジュアル多い |
| 技術図面 | pdf-vision-reader | 図が主体 |
| グラフ・チャート資料 | pdf-vision-reader | データビジュアライズ |
| 設計書(図表あり) | pdf-vision-reader | 複雑なレイアウト |
パフォーマンス
処理時間
| ページ数 | 変換時間 | 解析時間 | 合計 |
|---|---|---|---|
| 10ページ | ~5秒 | 30-60秒 | ~1分 |
| 30ページ | ~15秒 | 90-180秒 | ~3分 |
| 100ページ | ~50秒 | 300-600秒 | ~10分 |
最適化
- 重要なページのみ選択して解析
- DPI を調整(図表多い: 300 DPI、テキスト中心: 150-200 DPI)
- 大きな PDF は分割処理
トラブルシューティング
pdf2image が見つからない
wsl pip3 install pdf2imagepoppler-utils が見つからない
wsl sudo apt-get update
wsl sudo apt-get install -y poppler-utils画像変換が失敗する
原因と対策:
- PDF が破損 → 別の PDF で確認
- ディスク容量不足 → 空き容量を確保
- メモリ不足 → ページ数を減らして試行
解析精度が低い
改善策:
- DPI を上げる(300 推奨)
python scripts/pdf_to_images.py document.pdf ./images 300- 元の PDF の画質を確認
- スキャン画像の場合は OCR 前処理を検討
開発・カスタマイズ
スクリプトの修正
scripts/pdf_to_images.py を編集して機能追加可能。
カスタマイズ例
特定ページのみ変換
# ページ 5-10 のみ変換
from pdf2image import convert_from_path
images = convert_from_path(pdf_path, first_page=5, last_page=10)DPI の変更
# 高解像度(300 DPI)
python scripts/pdf_to_images.py document.pdf ./images 300出力形式の変更
# JPEG で保存(ファイルサイズ削減)
image.save(str(image_path), "JPEG", quality=85)技術詳細
使用ライブラリ
- pdf2image: PDF → 画像変換
- poppler-utils のラッパー
- 高品質な画像生成
- Pillow: 画像処理
- 画像保存
- 形式変換
Claude Vision API
- 画像解析に Claude の vision 機能を使用
- 図表、グラフ、レイアウトを理解
- 自然言語で説明を生成
制限事項
- スキャン品質が低い PDF は精度低下
- 手書きメモは状況により精度が変わる
- 非常に複雑なレイアウトは簡略化される可能性
- 巨大な PDF(100ページ超)は処理時間に注意
関連スキル
- pdf-reader: テキスト中心の PDF 用
- docx-reader: Word 文書用
ライセンス
このスキルは個人プロジェクト用です。
バージョン
- v1.0.0 (2026-01-06)
- 初期リリース
- PDF → 画像変換機能
- Vision ベースの解析ワークフロー
- 図表・グラフ・テーブルの理解
- Markdown 出力フォーマット
#!/usr/bin/env python3
"""
PDF to Images Converter
Converts each page of a PDF to individual image files.
"""
import sys
import os
from pathlib import Path
try:
from pdf2image import convert_from_path
except ImportError:
print("Error: pdf2image is not installed.")
print("Please install it with: pip install pdf2image")
print("Also requires poppler-utils: sudo apt-get install poppler-utils")
sys.exit(1)
def pdf_to_images(pdf_path, output_dir=None, dpi=200):
"""
Convert PDF to images, one per page.
Args:
pdf_path (str): Path to the PDF file
output_dir (str): Directory to save images (default: same as PDF)
dpi (int): Image resolution (default: 200)
Returns:
list: List of image file paths
"""
try:
pdf_path = Path(pdf_path)
if not pdf_path.exists():
print(f"Error: File not found: {pdf_path}")
return []
# Set output directory
if output_dir is None:
output_dir = pdf_path.parent / f"{pdf_path.stem}_pages"
else:
output_dir = Path(output_dir)
output_dir.mkdir(parents=True, exist_ok=True)
print(f"Converting PDF to images...")
print(f"PDF: {pdf_path}")
print(f"Output: {output_dir}")
# Convert PDF to images
images = convert_from_path(str(pdf_path), dpi=dpi)
image_paths = []
for i, image in enumerate(images, start=1):
image_path = output_dir / f"page_{i:03d}.png"
image.save(str(image_path), "PNG")
image_paths.append(str(image_path))
print(f" Page {i}/{len(images)}: {image_path.name}")
print(f"\nTotal pages converted: {len(images)}")
print(f"Images saved to: {output_dir}")
return image_paths
except Exception as e:
print(f"Error converting PDF: {str(e)}")
return []
def main():
"""Main entry point for the script."""
if len(sys.argv) < 2:
print("Usage: python pdf_to_images.py <pdf_path> [output_dir] [dpi]")
print("\nExample:")
print(" python pdf_to_images.py document.pdf")
print(" python pdf_to_images.py document.pdf ./images 300")
sys.exit(1)
pdf_path = sys.argv[1]
output_dir = sys.argv[2] if len(sys.argv) > 2 else None
dpi = int(sys.argv[3]) if len(sys.argv) > 3 else 200
image_paths = pdf_to_images(pdf_path, output_dir, dpi)
if image_paths:
print("\nImage paths (for Claude):")
for path in image_paths:
print(f" {path}")
sys.exit(0)
else:
sys.exit(1)
if __name__ == "__main__":
main()
Related skills
FAQ
What does pdf-vision-reader do?
pdf-vision-reader lets Claude Code agents read PDF files using vision-based interpretation so developers can query specs, manuals, and reports embedded with tables or diagrams without manual transcription.
When should developers use pdf-vision-reader?
Developers should use pdf-vision-reader when project knowledge lives in PDF artifacts—vendor datasheets, exported Confluence specs, or scanned reports—and agents need faithful content extraction for implementation.