使用技巧2026-10-03约 1 分钟阅读

PDF 转 JPG 或 PNG:DPI 改变什么,以及怎么只导出一页

PDF 转图片工具把每一页渲染后打成 ZIP,除非选 JPEG,否则输出 PNG。网页表单只有格式和 DPI 两项;接口里的页码与 WebP 参数会被忽略。附 150 与 300 DPI 的实测文件大小,以及只导出单页的做法。

PDF123 · 更新于 2026-10-03

PDF 转图片把 PDF 的每一页渲染成一张图,再打成一个 ZIP 返回。网页表单只有格式(PNG 或 JPEG)和 DPI 两项,不能选页码,也没有 WebP。这两项都会大幅改变输出体积,下面用实测数字说明差多少。

一个完整例子:6 页文件,四种设置

测试文件是用 Ghostscript 生成的 6 页、US Letter、纯文字文档:每页 32 行 11 pt Times,共 5,593 字节。把它分别按下表设置发送到本地构建的服务端 /api/v1/convert/pdf/img。数字来自 2026-10-04 的一次运行,换一份文档,大小会不同。

DPI 格式 每页像素 第 1 页 6 页 ZIP
150 PNG 1275 x 1650 53,400 字节 195,476 字节
300 PNG 2550 x 3300 127,391 字节 494,897 字节
150 JPEG 1275 x 1650 252,280 字节 1,340,684 字节
300 JPEG 2550 x 3300 685,891 字节 3,272,299 字节

像素数由页面尺寸决定:Letter 是 8.5 x 11 英寸,150 DPI 即 1275 x 1650,300 DPI 即 2550 x 3300。DPI 翻倍,像素数变成四倍,但这次 PNG 的 ZIP 只增大到约 2.5 倍,因为大片纯白容易压缩。

这份文件里 JPEG 反而比 PNG 大:150 DPI 下第 1 页约是 PNG 的 4.7 倍。“JPEG 体积小”的常识适用于照片。文字页大面积纯白、边缘锐利,PNG 压得很好,JPEG 压不好。照片或扫描页可能相反,所以批量转换前先拿一页有代表性的试一下。

ZIP 以 PDF 文件名命名(contract.pdf 得到 contract.zip),里面是 page.1.png 到 page.6.png;选 JPEG 时是 .jpg。

接口接受却忽略的选项

网页表单没有这两项,但脚本如果发送它们,不会报错,也不会生效:

  • 页码选择。 发送 pageNumbers=2,返回的仍是全部 6 页。每次都渲染所有页面。
  • WebP。 imageFormat=webp 返回的 PNG 与 png 的文件名、大小都一样。只有 jpeg 和 jpg 会选 JPEG,其他取值一律回落到 PNG。

需要 WebP,请事后在图片编辑器里转换。

只要某一页怎么办

先把那一页切出来,再转这份单页 PDF:

  1. 打开提取页面,上传 PDF,要保留的页填 2。测试中得到的是 1 页的 PDF。
  2. 把它上传到PDF 转图片,DPI 设 150,格式保持 PNG。ZIP 里只有一个文件 page.1.png。

虽然它来自原文件的第 2 页,文件名仍是 page.1.png,因为提取后的 PDF 页码重新从 1 开始。原页码重要的话请自己改名。

DPI:表单与接口的默认值不同

网页表单预填 300。直接调接口、不传 dpi 时按 150 渲染。脚本产出的图比浏览器的小,多半是这个原因,两边都显式传 dpi。传入非数字会得到 400,信息是 “dpi must be a number”。

经验判断,依据上表而非任何画质基准:150 DPI 够在屏幕上读完整页;300 DPI 用于打印或放大看小字。这次运行中,300 DPI 的 PNG ZIP 约是 150 DPI 的 2.5 倍,页数多又以扫描为主的文档会成倍放大。

哪些东西保留不下来

输出是像素,所以:

  • 文字不能再选取或搜索。要文字用PDF 转文本,扫描件用 OCR。
  • 链接失效。
  • 矢量标志和图表按你选的 DPI 栅格化,之后放大会发虚。需要更清楚,就用更高 DPI 重新转。

把原 PDF 和图片放在一起保存。用图片转 PDF转回去,得到的是由文字照片拼成的 PDF,不是原来的文档。

带密码的 PDF 会得到 400,信息是 “This PDF is password-protected. Enter its password.”,给这个接口加 password 字段也没用。请先用解锁去掉密码。

批量使用前先抽查

从 ZIP 里取一页,放大到 100% 看小字和细线。发虚就提高 DPI 重跑;ZIP 太大就降低 DPI,或者先确认 JPEG 对你的页面确实更小再改用。

打开工具
在浏览器里完成处理,不加水印,文件处理完就会删除。
打开工具