Dee*_*nky 465 pdf convert software-recommendation
我需要将 PDF 页面转换为图像。我的文件中有一个带有一些文本的背景图像,当我将其另存为图像时,只有背景图像会被保存。
是否有任何可用的软件可以将完整的页面转换为图像?
enz*_*tib 616
您可以使用pdftoppm将 PDF 转换为 PNG:
pdftoppm input.pdf outputname -png
Run Code Online (Sandbox Code Playgroud)
这将使用格式输出 PDF 中的每个页面outputname-01.png,01作为页面的索引。
pdftoppm input.pdf outputname -png -f {page} -singlefile
Run Code Online (Sandbox Code Playgroud)
更改{page}为页码。它的索引为 1,因此-f 1将是第一页。
此命令的默认分辨率为 150 DPI。增加它会导致更大的文件大小和更多的细节。
要提高转换后的 PDF 的分辨率,请添加选项-rx {resolution}和-ry {resolution}. 例如:
pdftoppm input.pdf outputname -png -rx 300 -ry 300
Run Code Online (Sandbox Code Playgroud)
Bin*_*ife 337
安装imagemagick。
使用 PDF 所在的终端:
完整文档:
convert -density 150 input.pdf -quality 90 output.png
Run Code Online (Sandbox Code Playgroud)对于单个页面:
convert -density 150 input.pdf[666] -quality 90 output.png
Run Code Online (Sandbox Code Playgroud)据此:
可以选择 PNG、JPG 或(几乎)任何其他图像格式。
-density xxx将 DPI 设置为xxx(通常为 150 和 300)。
-quality xxx将压缩设置xxx为 PNG、JPG 和 MIFF 文件格式(100 表示不压缩)。
[666]将仅将第 667 页转换为 PNG(从零开始编号[0],第一页也是如此)。
所有其他选项(如修剪、灰度等)都可以在Image Magic网站上查看。
Anm*_*ggi 17
当前接受的答案可以完成这项工作,但会导致输出尺寸更大并遭受质量损失。
此处给出的答案中的方法产生的输出与输入的大小相当,并且不会受到质量损失的影响。
TLDR - 使用pdfimages:pdfimages -j input.pdf output
引用链接的答案:
不清楚您所说的“质量损失”是什么意思。这可能意味着很多不同的事情。你能贴一些样本来说明吗?也许从质量差和质量好的版本中删除相同的部分(作为 PNG 以避免进一步的质量损失)。
也许您需要使用
-density以更高的 dpi 进行转换:Run Code Online (Sandbox Code Playgroud)convert -density 300 file.pdf page_%04d.jpg(您可以预先添加
-units PixelsPerInch或-units PixelsPerCentimeter在必要时。我的副本默认为 ppi。)更新: 正如您所指出的,
gscan2pdf(您使用它的方式)只是pdfimages(来自poppler的包装器)。pdfimages不会做与convert给定 PDF 作为输入时相同的事情。
convert获取 PDF,以某种分辨率呈现它,并将生成的位图用作源图像。
pdfimages查看嵌入位图图像的 PDF 并将每个图像导出到一个文件。它只是忽略 PDF 中的任何文本或矢量绘图命令。因此,如果您拥有的 PDF 只是一系列位图的包装器,
pdfimages那么在提取它们时会做得更好,因为它会为您提供原始大小的原始数据。您可能还想使用-j选项pdfimages,因为 PDF 可以包含原始 JPEG 数据。默认情况下,pdfimages将所有内容转换为 PNM 格式,并且转换 JPEG > PPM > JPEG 是一个有损过程。所以,试试
Run Code Online (Sandbox Code Playgroud)pdfimages -j file.pdf page您可能需要也可能不需要使用
convertto.jpg步骤(取决于 PDF 使用的位图格式)。我在用一系列 JPEG 图像制作的 PDF 上尝试了这个命令。提取的 JPEG 与源图像逐字节相同。你无法获得比这更高的质量。
Vit*_*hKa 11
如果您的 pdf 已扫描,则图像已作为 pdf 的一部分存储。您只需要使用以下命令提取它们pdfimages:
pdfimages my-file.pdf prefix
Run Code Online (Sandbox Code Playgroud)
如果您只想将 PDF 的特定页面转换为 PNG,您可以像这样pdftk通过管道convert(如上所述):
pdftk document.pdf cat 12 output - | convert - document-page-12.png
Run Code Online (Sandbox Code Playgroud)