將 PDF 轉換為多圖像(png、jpg)

將 PDF 轉換為多圖像(png、jpg)

我讀了連結:https://www.overleaf.com/blog/613-tip-of-the-week-how-to-convert-typeset-pdf-pages-into-raster-image-formats

我使用 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.pngMy_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.pngpage-1.png等等。

請注意,最新版本convert可能會出現問題。請務必閱讀https://stackoverflow.com/questions/42928765/convertnot-authorized-aaaa-error-constitute-c-readimage-453https://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" />

在原始文件中,參數rightsnone限制要低得多,這將阻礙中等大小 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.jpgoutput-prefix-02.jpg...(0的數量根據文件的數量確定)

相關內容