PDF转图片

SKILL效率
效率 未标注权限 许可证不明确
安装这个技能

把 PDF 页面转成高清 PNG 图片,适合发票、单据、文档图片化上传

一句话选型结论

按资料字段整理

PDF转图片是效率类的 Agent Skill,安装方式未标注,权限级别未标注,许可证不明确,有可直接复制的安装命令。技能本质是给模型读的说明书,效果取决于模型与客户端;装完先用一个小任务验证,再放进正式流程。

分类效率 安装方式未标注 权限级别未标注权限 许可证许可证不明确
累计安装 未标注 本周 未标注
GitHub 星标 未标注 仓库 未标注
下载量 未标注 技能市场下载数
权限级别 未标注权限 安装前请确认风险范围
许可证 许可证不明确 未说明

安装

未标注
在支持 Skills 的客户端里执行,装完问一句「你有哪些技能」验证
skillhub install user_c8d6ee44/pdfzhuantu
  1. 1
    确认客户端支持

    确认你的客户端支持 Skills(Claude、Codex、Cursor 等),并升级到较新的版本。

  2. 2
    拿到技能文件

    执行上面的命令安装;也可以把仓库里的 SKILL.md 手动放进客户端的 skills 目录。

  3. 3
    刷新技能列表

    重新打开客户端,或刷新技能列表,让新放进来的技能被加载。

  4. 4
    验证是否生效

    问一句「你有哪些技能」,确认列表里出现它,再拿一个小任务试跑。

技能档案

效率
字段来自技能仓库与公开索引,中文说明由本站标注
作者 / 维护方user_c8d6ee44仓库 未标注 · 版本 未标注
宿主客户端未标注技能可被这些客户端加载
安装方式未标注安装包 community
权限级别未标注权限安装前请确认风险范围
许可证未说明许可证不明确,商用前请自行确认条款
仓库可用性available技能仓库当前是否可访问
最近核验未标注上游最后核验时间 · 数据更新 1791732360
正文体量8.4 KBSKILL.md 原文大小,越大说明说明书写得越细

典型使用场景

3 类
按分类整理的常见用法,具体以 SKILL.md 为准
整理待办与日程

把零散任务收进清单,排出优先级。

批量处理重复任务

把固定动作做成模板,重复执行。

把流程写成清单

把口头流程整理成可复用的步骤。

选择建议

装之前先看这几条
按条目字段给出的判断,不替你决定用不用

值得选的地方

  • 有可直接复制的安装命令,不用自己翻文档找入口。

先想清楚的地方

  • 没有标注权限级别,实际能做什么要装好后确认。
  • 许可证不明确,商用或二次分发前先到仓库确认条款。
  • 没有做站内核验,内容以作者仓库为准。
  • 技能只是说明书,实际效果取决于模型与客户端,装完先用小任务试一遍。

更适合

  • 需要在效率场景里给模型补一套做法的人。
  • 愿意先读一遍 SKILL.md、确认它会让模型做什么的人。

不太适合

  • 对许可证要求很严、必须明确可商用的人。
  • 只想装完就自动变强、不打算看说明书的人。

同类对比

6 个同类
同分类里挑最接近的几条,字段以各自详情页为准
技能权限级别安装方式累计安装宿主客户端安装命令
PDF转图片当前 未标注权限 未标注 未标注 未标注 有
Nano PDF 文档 联网访问 ClawHub 市场 424.9 万 OpenClaw 有
自动更新程序 浏览器控制 ClawHub 市场 296.4 万 OpenClaw 有
Gemini 助手 联网访问 ClawHub 市场 254.7 万 OpenClaw 有
word DOCX 文档 联网访问 ClawHub 市场 239.6 万 OpenClaw 有
Excel XLSX 前端 联网访问 ClawHub 市场 227.0 万 OpenClaw 有

SKILL.md 全文

8.4 KB
模型实际读到的说明书原文,来自技能仓库

PDF转图片(pdfzhuantu)

将PDF文件转换为PNG图片。基于PyMuPDF(fitz)渲染,保证中文和印刷体清晰度。

快速概览

  • 输入:PDF文件(非加密)
  • 输出:PNG图片,2x分辨率(~144 DPI),到桌面 PDF转图_时间戳/ 文件夹
  • 页数:支持单页/指定页/全部页
  • 首次使用:自动检测环境 → 询问确认 → 从清华镜像安装 PyMuPDF==1.27.2.3
  • 适用系统:Windows / macOS / Linux
  • 不支持:加密PDF、扫描件OCR

文件结构

文件 用途
SKILL.md 技能入口(AI 执行指令 + 人类速览)
scripts/detect_env.py 穷举式环境检测脚本(三源合并,逐个测试 fitz)
references/ENVIRONMENT.md 环境检测与依赖安装完整流程(AI 深度参考)
references/FAQ.md 常见问题详细解答
references/EXAMPLES.md 使用示例

能力边界

项目 支持范围
输入格式 PDF(非加密、非损坏)
输出格式 PNG(默认2x分辨率,约144 DPI等效)
页数限制 无硬限制(>200页建议分批)
扫描件PDF 原样渲染输出,不做OCR
加密PDF 不支持,提示用户提供解密版本
操作系统 Windows / macOS / Linux
批量处理 当前仅支持单文件

欢迎语

> 已进入PDF转图片模式,首次使用可能会下载匹配的环境依赖,请耐心等待

触发条件

用户提到以下任意一种表述时,立即使用本技能:
- "PDF转图片" / "PDF转图" / "pdf转图" / "pdf转图片" / "pdf to image" / "pdfzhuantu"
- "把PDF转成图片" / "PDF转成图片" / "PDF导出图片"
- "PDF to image" / "PDF to PNG" / "convert PDF to image"
- 用户直接拖入/粘贴PDF文件路径

前置依赖检测

> v2.0.0 起:穷举式环境检测,扫描本机所有 Python 解释器,逐个测试是否有 fitz。不再依赖入口 Python,不遗漏任何候选,绝不重复安装。
>
> 检测脚本:scripts/detect_env.py(三源合并 → 去重 → 逐个测试)

两步流程

Step 0:运行 detect_env.py(任意 Python 执行)
   ├─ OK|<python_path>|<version> → 记录 TARGET_PYTHON,跳过安装,直接转换
   └─ FITZ_MISSING|<install_target> → Step A(安装)
         ├─ 提示用户确认 → pip install pymupdf==1.27.2.3
         ├─ OK → 回到 Step 0 重检
         └─ FAILED → 给出手动安装命令

完整流程见 → references/ENVIRONMENT.md

> 核心规则:转换全程用 TARGET_PYTHON 执行,不要用 PATH 的 python 命令。

转换流程

Step 1:输入解析

从用户消息中提取:
- PDF路径:用户指定路径
- 输出根目录:用户桌面(USERPROFILE/Desktop → expanduser("~")/Desktop)
- 时间戳文件夹:PDF转图_YYYYMMDDHHMM/;同分钟冲突追加 _2、_3
- 页数需求:
- "全部页面"/"所有页"/"每页" → 全部页
- "第X页" → 指定页
- 其他 → Step 1.5 让用户选择
- 分辨率:固定 2x

Step 1.5:多页确认(仅 len(doc) > 1)

> "这个 PDF 共 N 页。请选择:1) 全部页 2) 只转第 X 页"

用户回复前不执行。单页 PDF 跳过本步。

Step 2:单页转换

用 TARGET_PYTHON 执行:

import fitz, os, re
from datetime import datetime

pdf_path = r"<用户PDF路径>"

if not os.path.exists(pdf_path.strip()):
    raise FileNotFoundError(f"文件不存在: {pdf_path}")

try:
    doc = fitz.open(pdf_path)
except fitz.FileDataError:
    raise RuntimeError("该PDF已加密或已损坏,请提供未加密版本。")

if len(doc) == 0:
    raise RuntimeError("该PDF为0页空文件,无法转换。")

user_home = os.environ.get("USERPROFILE") or os.path.expanduser("~")
desktop = os.path.join(user_home, "Desktop")

now = datetime.now()
ts = now.strftime("%Y%m%d%H%M")
folder = os.path.join(desktop, f"PDF转图_{ts}")

# 时间戳文件夹冲突处理
if os.path.exists(folder):
    i = 2
    while os.path.exists(os.path.join(desktop, f"PDF转图_{ts}_{i}")):
        i += 1
    folder = os.path.join(desktop, f"PDF转图_{ts}_{i}")

os.makedirs(folder, exist_ok=True)

# 文件名清洗
base_name = os.path.splitext(os.path.basename(pdf_path))[0]
base_name = re.sub(r'[<>:"/\\|?*]', '_', base_name)

out_path = os.path.join(folder, f"{base_name}.png")

# 文件名冲突处理
if os.path.exists(out_path):
    j = 1
    while os.path.exists(os.path.join(folder, f"{base_name}_{j}.png")):
        j += 1
    out_path = os.path.join(folder, f"{base_name}_{j}.png")

page_idx = <用户指定页码 - 1,默认 0>
page = doc[page_idx]
mat = fitz.Matrix(2, 2)
pix = page.get_pixmap(matrix=mat)
pix.save(out_path)

total_pages = len(doc)
doc.close()

print(f"OK|{out_path}|{total_pages}页")

Step 3:多页全转

total = len(doc)
for i in range(total):
    page = doc[i]
    mat = fitz.Matrix(2, 2)
    pix = page.get_pixmap(matrix=mat)
    out = os.path.join(folder, f"{base_name}_{i+1:03d}.png")
    try:
        pix.save(out)
        print(f"OK|{out}|({i+1}/{total})")
    except Exception as e:
        print(f"FAIL|第{i+1}页|{e}")

doc.close()
print(f"DONE|{total}页|{folder}")

Step 4:输出确认

用 TARGET_PYTHON 验证,向用户报告:输出文件夹路径、页数、每张图文件大小、分辨率。

常见问题(FAQ 精选)

Q:能转成 JPG 吗?
当前仅支持 PNG。

Q:分辨率能调吗?
固定 2x(A4 约 1700×2400 像素),文档/发票场景已足够。

Q:加密 PDF 怎么办?
不支持。先用其他工具移除密码再转换。

Q:扫描件 PDF 效果如何?
原样渲染,不做 OCR。效果取决于原始扫描质量。

Q:安装依赖失败?
安装脚本优先走清华镜像(快),失败后自动尝试官方 PyPI。全失败时可手动:

"C:/path/to/venv/Scripts/python.exe" -m pip install pymupdf==1.27.2.3 -i https://pypi.tuna.tsinghua.edu.cn/simple --trusted-host pypi.tuna.tsinghua.edu.cn

Q:输出在哪里?
桌面 PDF转图_年月日时分/ 文件夹。

错误处理

错误 处理
Python 缺失 detect_env.py 无输出
fitz 未安装 detect_env.py 输出 FITZ_MISSING
pip 不可用 Step A 安装失败
pip 安装失败 Step A INSTALL_FAILED
PDF 不存在 提示检查路径
PDF 加密/损坏 提示提供解密版本
PDF 空文件 提示无法转换
页码超范围 提示"共 N 页"
磁盘已满 提示清理空间
某页转换失败 继续后续页,汇总成功/失败数

反例与黑名单

❌ 不要做:
- 跳过环境检测直接转换
- 使用低分辨率(1x)输出
- 修改用户原始 PDF 文件
- 覆盖已存在文件而不告知
- 多页 PDF 未询问就默认全转
- 用 PATH python 执行转换(必须用 TARGET_PYTHON)
- 把 pymupdf 装到裸解释器(INSTALL_TARGET 由 detect_env.py 确定)
- 用 shell 命令(ls/grep/2>/dev/null)做环境检测(Windows 不兼容)
- 检测到 FITZ_MISSING 后不安装就直接用 python -c 执行转换

参考文档

文档 / 文件 内容
scripts/detect_env.py 穷举式环境检测脚本——三源合并、逐个测试 fitz
references/ENVIRONMENT.md 环境检测与依赖安装完整流程(AI 执行深度参考)
references/FAQ.md 常见问题详细解答
references/EXAMPLES.md 使用示例

常见问题

5 问
答案由本站依据条目字段整理
PDF转图片怎么安装?

在支持 Skills 的客户端里执行:skillhub install user_c8d6ee44/pdfzhuantu。安装方式为未标注。装完刷新技能列表或重开客户端。

PDF转图片支持哪些客户端?

资料没有标注宿主客户端,但只要客户端支持 Skills(Claude、Codex、Cursor 等),一般都能加载。

PDF转图片权限高吗,安全吗?

权限级别为未标注权限。安装前先看它会读取或写入哪些内容。

PDF转图片收费吗?

本站不代收费用,也没有标注具体价格。是否收费取决于技能本身和所用的模型或客户端,正式使用前按作者说明确认。

PDF转图片用什么许可证?

许可证标注为 未说明(许可证不明确)。商用或二次分发前请到仓库确认条款原文。

热门专题

按场景挑技能
全部专题 →

技能内容以作者仓库为准;分类、权限级别与许可证状态的中文说明为中文整理,最近核验 未标注。