![将 Pdf 转换为多幅图像 (png,jpg)](https://linux22.com/image/400004/%E5%B0%86%20Pdf%20%E8%BD%AC%E6%8D%A2%E4%B8%BA%E5%A4%9A%E5%B9%85%E5%9B%BE%E5%83%8F%20(png%2Cjpg).png)
我使用 Texmarker 5.0.3 我可以将 main.pdf 转换为多幅图像(每页 = 一幅图像)吗?
示例代码:
\documentclass[11pt]{article}
\usepackage{blindtext}
%\usepackage{tikz}
\usepackage{tcolorbox}
\begin{document}
\blindtext
\begin{tcolorbox}[width=\textwidth,height=5cm]
ABC DEF
\end{tcolorbox}
\blindtext
\newpage
\clearpage
\blindtext
\begin{tcolorbox}[width=\textwidth,height=5cm]
XXX YYY
\end{tcolorbox}
\blindtext
\end{document}
预先感谢
答案1
在 (完整) TeXLive 发行版中,有一个有趣的实用程序,pdftoppm
可以使用一些选项将 PDF 转换为 PNG(例如,在我的 Windows 机器上C:\texlive\2018\bin\win32\pdftoppm.exe
)。不可否认的优势是无需安装任何东西。
运行cmd
后pdftoppm -help
,您将获得以下输出,了解该实用程序的工作原理:
因此,例如,只要写
C:\path\to\my\PDFfile pdftoppm -f 1 -l 2 -r 300 -png Name_Of_My.pdf My_Images
将 LaTeX 生成的两页 PDF 输出 ( Name_Of_My.pdf
) 转换为单独的图像文件My_Images-1.png
和My_Images-2.png
,其中生成的 PNG 文件的前缀名称 ( My_Images
) 来自上面命令行的最后一部分。
上面的 MWE 的 PNG 输出如下......
答案2
如果我理解正确的话,PDF->图像步骤不是由 LaTeX 完成的,而是由外部调用convert
(部分ImageMagick 套件)因此,这也许与主题无关,但是...
基本上,一旦您安装了它,您就应该能够使用这个命令(至少在 Linux 中,我认为在其他操作系统中也会一样):
convert -density 300 -background white -alpha remove -alpha off pdf-file.pdf page.png
并且您的页面分辨率为 300 dpi,名为page-0.png
,page-1.png
等等。
请注意,最新版本convert
可能会有问题。请务必阅读https://stackoverflow.com/questions/42928765/convertnot-authorized-aaaa-error-constitute-c-readimage-453和https://github.com/ImageMagick/ImageMagick/issues/396然后,如果您有错误,请编辑您的/etc/ImageMagick-6/policy.xml
内容:
<policy domain="resource" name="memory" value="4GiB"/>
<policy domain="resource" name="map" value="4GiB"/>
<policy domain="resource" name="width" value="128KP"/>
<policy domain="resource" name="height" value="128KP"/>
<policy domain="resource" name="area" value="1.28GP"/>
<policy domain="resource" name="disk" value="8GiB"/>
<policy domain="coder" rights="read|write" pattern="PS" />
<policy domain="coder" rights="read|write" pattern="EPS" />
<policy domain="coder" rights="read|write" pattern="PDF" />
<policy domain="coder" rights="read|write" pattern="XPS" />
在原始文件中,限制rights
要none
低得多,这会妨碍中等大小 PDF 文件的执行。
答案3
我发现pdftoppm
(poppler 工具) 比 imagemagick/convert 效率更高,质量也更好 (当我使用 convert 设置过高的质量时,它会崩溃)。例如,您可以执行以下操作:
pdftoppm -jpeg -r 300 -scale-to-x 1920 -scale-to-y 1080 yourfile.pdf output-prefix
它会创建许多图像output-prefix-01.jpg
,如output-prefix-02.jpg
……(0 的数量取决于文件的数量)