
對於我的乳膠文檔,我有 tga 格式的圖像文件,我想包含其中。我想將它們轉換為 pdf,這樣 Latex 就可以在不損失精度的情況下縮放它們。
到目前為止,我只是使用 inkscape 完成了此操作,但對於許多圖片來說,這可能需要大量工作。有什麼東西可以讓 Latex 自動做到這一點嗎?或者有沒有辦法在我的命令列中執行此操作,而不需要像 inkscape 這樣的 GUI?
請注意:我有linux。
答案1
“Truevision TGA,通常稱為 TARGA,是一種光柵圖形檔案格式 [...]”
備註:PDF 格式可以包含光柵影像和向量影像。例如,掃描程式通常提供 PDF 作為輸出格式,但這些 PDF 僅包含掃描的光柵影像。對於更熟悉 PDF 檢視器而不是圖像程式的使用者來說,這只是一種方便。此外,將多個圖像作為頁面放入 PDF 文件也更容易。
如果您想要向量數據,則需要向量化和一個好的程式來完成它。免費軟體工具範例:potrace
用於單色影像。但為了獲得良好的結果,您通常需要調整向量化過程的參數。
如果您只想將.tga
文件包含在 pdflatex 中,那麼 packageepstopdf
會有所幫助:
\usepackage{graphicx}
\usepackage{epstopdf}
\epstopdfDeclareGraphicsRule{.tga}{png}{.png}{%
convert #1 \OutputFile
}
\AppendGraphicsExtensions{.tga}
然後<file>.tga
會自動轉換並包含為<file>-tga-converted-to.png
.convert
由於這裡使用的是轉換程式ImageMagick
。
編輯:運行外部程式需要一些權限。在 TeX Live 中,預設啟用受限 shell 轉義。但支援的程序列表不包括convert
.因此--shell-escape
pdflatex 需要選項。
完整範例
假設該.tga
檔案名稱為foobar.tga
:
\documentclass{article}
\usepackage{graphicx}
\usepackage{epstopdf}
\epstopdfDeclareGraphicsRule{.tga}{png}{.png}{%
convert #1 \OutputFile
}
\AppendGraphicsExtensions{.tga}
\begin{document}
\includegraphics{foobar}
\end{document}
並且pdflatex
需要用選項呼叫--shell-escape
(TeX Live); MiKTeX 也用作--enable-write18
同義詞。
PS 如果只有一個.tga
檔案只需要轉換一次,那麼在命令列上轉換它會更容易,例如:
convert foobar.tga foobar.png
另外,互動式圖像程式可以讀取 TGA 檔案並匯出 PNG 檔案。