跳轉至內容

LaTeX/匯入圖形

來自華夏公益教科書,自由的教科書

匯入外部圖形

[編輯 | 編輯原始碼]

LaTeX

入門
  1. 簡介
  2. 安裝
  3. 安裝額外的包
  4. 基礎
  5. 如何獲得幫助

常用元素

  1. 文件結構
  2. 文字格式化
  3. 段落格式化
  4. 顏色
  5. 字型
  6. 列表結構
  7. 特殊字元
  8. 國際化
  9. 旋轉
  10. 表格
  11. 標題建立
  12. 頁面佈局
  13. 自定義頁面頁首和頁尾‎
  14. 匯入圖形
  15. 浮動體、圖形和標題
  16. 腳註和邊注
  17. 超連結
  18. 標籤和交叉引用
  19. 首字母

機制

  1. 錯誤和警告
  2. 長度
  3. 計數器
  4. 規則和支撐

技術文字

  1. 數學
  2. 高階數學
  3. 定理
  4. 化學圖形
  5. 演算法
  6. 原始碼清單
  7. 語言學

特殊頁面

  1. 索引
  2. 詞彙表
  3. 參考文獻管理
  4. 更多參考文獻

特殊文件

  1. 科學報告(學士報告、碩士論文、博士論文)
  2. 信件
  3. 簡報
  4. 教師專區
  5. 簡歷
  6. 學術期刊(MLA、APA 等)

建立圖形

  1. 介紹過程式圖形
  2. MetaPost
  3. Picture
  4. PGF/TikZ
  5. PSTricks
  6. Xy-pic
  7. 建立 3D 圖形

程式設計

  1. Plain TeX
  2. 建立包
  3. 建立包文件
  4. 主題

雜項

  1. 模組化文件
  2. 協作編寫 LaTeX 文件
  3. 匯出到其他格式

幫助和建議

  1. 常見問題解答
  2. 技巧

附錄

  1. 作者
  2. 連結
  3. 包參考
  4. LaTeX 示例文件
  5. 索引
  6. 命令詞彙表

編輯此框編輯目錄

可以使用 graphicx 包匯入外部圖形。最重要的命令是 \includegraphics。LaTeX 本身將影像視為普通文字,即具有特定高度和寬度的框。

\documentclass{article}
\usepackage{graphicx}
\begin{document}
The following image does not show any wombats
\includegraphics[height=\baselineskip]{example-image}.

\includegraphics[height=3cm]{example-image-a}\includegraphics[width=5cm]{example-image-b}

\includegraphics[height=3cm]{example-image-a} \includegraphics[width=5cm]{example-image-b}
\end{document}

包文件列出了 widthheight 選項以及其他選項。

使用 pdflatex 支援多種圖形格式:pdfpngjpg。現代 LaTeX 安裝也可以使用 eps 檔案,但方式間接。

dvi 模式下的 LaTeX 只支援 eps 檔案。


width=200px


可以將影像排列在矩陣中。只需要考慮影像的適當寬度即可。

\documentclass{article}
\usepackage{graphicx}
\usepackage{blindtext}
\usepackage{showframe}
\begin{document}
\begin{center}
\includegraphics[width=.3\linewidth]{example-image}\quad\includegraphics[width=.3\linewidth]{example-image-a}\quad\includegraphics[width=.3\linewidth]{example-image-b}
\\[\baselineskip]% adds vertical line spacing
\includegraphics[width=.3\linewidth]{example-image}\quad\includegraphics[width=.3\linewidth]{example-image-a}\quad\includegraphics[width=.3\linewidth]{example-image-b}
\end{center}
\end{document}

三張影像排成一行,每張影像的寬度僅為可用行寬的 30%,相對於下方文字居中。

Different images can be aligned in a matrix shape easily.


如果要新增標題並讓 LaTeX 跟蹤編號,請檢視浮動體部分

轉換圖形

[編輯 | 編輯原始碼]
注意

還應該檢視匯出到其他格式,瞭解其他可能性。

epstopdf

可以使用epstopdf 實用程式(包含在同名包中)將 EPS 轉換為 PDF。此工具實際上由pdflatex在載入 graphicx 包時,在後臺將 EPS 檔案轉換為 PDF。此過程對使用者完全不可見。

可以使用命令列批次轉換檔案。在 Bourne Shell(Unix)中,可以透過以下命令實現:

$ for i in *.eps; do epstopdf "$i"; done

在 Windows 中,可以透過將以下行放在 批處理檔案(副檔名為.bat的文字檔案)中,與影像位於同一目錄

for %%f in (*.eps) do epstopdf %%f

然後可以透過命令列執行它。

如果 epstopdf 生成了一個包含小圖形的整頁,並且圖形位於該頁面的某個位置,請使用

$ epstopdf --gsopt=-dEPSCrop foo.eps

或嘗試使用ps2pdf實用程式,該實用程式應已與 Ghostscript 一起安裝(所有 TeX 發行版都需要)。

$ ps2pdf -dEPSCrop foo.eps

對最終的 PDF 進行裁剪。

eps2eps

如果上述所有方法都失敗,可以在嘗試其他轉換之前,使用eps2eps 工具(另請參見下一節)簡化 EPS 檔案

$ eps2eps input.eps input-e2.eps

這將把所有字型轉換為預先繪製的影像,這在提交出版物手稿時有時是可取的。但是,另一方面,字型不會轉換為線條,而是轉換為點陣圖,這會降低字型的質量。

imgtops

imgtops 是一款輕量級圖形實用程式,用於在光柵圖形 (JPG、PNG 等) 和 EPS/PS 檔案之間進行轉換。

Inkscape

Inkscape 也可以將檔案從多種格式轉換到多種格式,無論是透過 GUI 還是透過命令列。例如,要從 SVG 影像中獲得 PDF,可以執行以下操作:

$ inkscape -z -D --file=input.svg --export-pdf=output.pdf

可以在 LaTeX 檔案中執行此命令,Template:LaTeX/package 包(在使用 --shell-escape 選項執行 (pdf)latex 時)可以使用 Inkscape 的 pdf+tex 匯出選項來實現此目的,或者可以使用簡單的宏。參見 如何在 LaTeX 中包含 SVG 圖表?-- Stackexchange 參見 匯出到其他格式 獲取更多詳細資訊。

pstoedit

要正確編輯 EPS 檔案,可以使用pstoedit 將其轉換為可編輯格式。例如,要獲得可編輯的 Xfig 檔案,請執行以下操作:

$ pstoedit -f fig input.eps output.fig

要獲得 SVG 檔案(可以使用任何向量圖形工具(如 Inkscape)編輯),可以執行以下操作:

$ pstoedit -f plot-svg input.eps output.svg

有時 pstoedit 無法建立目標格式(例如,當 EPS 檔案包含裁剪資訊時)。

PDFCreator

在 Windows 下,PDFCreator 是一款開源軟體,可以建立 PDF 和 EPS 檔案。它安裝了一個虛擬印表機,可以透過具有“列印...”選單項的其他軟體訪問(幾乎所有程式都有)。

光柵圖形轉換器

這三個程式的功能基本相同,可以進行大多數圖形格式之間的轉換。但是,Sam2p 是三者中最新的,似乎既能提供最佳質量,又能產生最小的檔案。

PNG alpha 通道

[編輯 | 編輯原始碼]

如果您在 PNG 格式中包含具有 alpha 通道的圖形,Acrobat Reader 有時在顯示顏色方面存在問題。可以透過刪除 alpha 通道來解決此問題。在 Linux 上,可以透過以下命令實現:convert來自 ImageMagick 程式

convert -alpha off input.png output.png

將彩色 EPS 轉換為灰度

[編輯 | 編輯原始碼]

有時,彩色 EPS 圖形需要轉換為黑白或灰度才能滿足出版物要求。可以使用 eps2eps(來自 Ghostscript 包)和 [1] 程式來實現此目的

$ eps2eps input.eps input-e2.eps
$ pscol -0gray input-e2.eps input-gray.eps

第三方圖形工具

[編輯 | 編輯原始碼]

我們這裡不會討論在 LaTeX 程式碼中建立的程式化圖形(TikZ、PSTricks、MetaPost 及其同類)。有關該內容,請參閱 Introducing Procedural Graphics

您應該優先使用向量圖形而不是光柵圖形,因為向量圖形的質量更高。光柵圖形只應在照片情況下使用。任何型別的圖表都應該是向量圖形。

正如我們之前看到的,LaTeX 處理

  • EPS 和 PDF 用於向量圖形;
  • PNG 和 JPG 用於光柵圖形。

如果某些工具無法儲存這些格式,您可能需要在匯入之前轉換它們。

向量圖形

[編輯 | 編輯原始碼]
Dia

Dia 是一款跨平臺的繪圖工具,可以匯出 eps 影像,或使用 tikz 包生成 tex 繪圖。

Inkscape

另一個用於建立向量圖形的程式是 Inkscape。它可以在 Windows、Linux 或 Mac OS X(使用 X11)上原生執行。它使用 可縮放向量圖形 (SVG) 檔案,儘管它可以匯出到許多可以包含在 LaTeX 檔案中的格式,例如 EPS 和 PDF。從 0.48 版本開始,有一個組合的 PDF/EPS/PS+LaTeX 輸出選項,類似於 Xfig 提供的選項。 這裡有說明 如何將您的向量影像儲存為 LaTeX 可以識別的 PDF 格式,並讓 LaTeX 自動管理影像中的文字樣式和大小。[1]。現在有了 svg 包[2],它提供了一個 \includesvg 命令,使用 Inkscape 將 svg 圖形直接轉換為 LaTeX 文件幷包含其中。您可以檢視 這個擴充套件示例

一個非常有用的外掛是 textext,它可以匯入 LaTeX 物件。這可用於將數學符號或 LaTeX 字型插入圖形(然後可以將這些圖形匯入 LaTeX 文件)。

Ipe

Ipe 可擴充套件繪圖編輯器是一款免費的向量圖形編輯器,用於建立 PDF 或 EPS 格式的圖形。與 Xfig 不同,Ipe 在螢幕上以正確的尺寸顯示 LaTeX 字型,這使得更容易將文字標籤放置在正確的位置。Ipe 還具有各種捕捉模式(例如,捕捉到點、線或交點),可用於幾何構造。

lpic

lpic[2] 提供了另一種解決方案,它允許對匯入的圖形進行 TeX 註釋。請參閱 Labels in the figures

LibreOffice

也可以使用 LibreOffice Draw 將向量圖形匯出為 EPS 格式,它是一款適用於 Windows、Linux 和 Mac 的開源辦公套件。

TpX

向量編輯器 TpX 將幾何物件與文字物件分開。幾何物件被儲存到 .PDF 檔案中,其餘部分被儲存到 .TpX 檔案中,由 LaTeX 處理。使用者只需在 TpX 編輯器中建立圖形,然後使用命令 \input{...TpX} 從 latex 檔案中呼叫 .TpX 檔案。

Xfig

Xfig 是一款基本程式,可以生成向量圖形,這些圖形可以匯出到 LaTeX。它可以在 Unix 平臺上安裝。

在 Microsoft Windows 系統上,Xfig 只能使用 Cygwin-X 安裝;但是,這需要高速網際網路連線,並且需要在您的計算機上佔用約 2 GB 的空間。使用 Cygwin,要執行 Xfig,您需要先啟動“啟動 X - 伺服器”,然後啟動“xterm”以調出一個終端。在這個終端中,鍵入“xfig”(不帶引號)並按回車鍵。

或者,使用 WinFIG。WinFIG 試圖在 Windows 計算機上實現 xfig 的功能。

有許多方法可以使用 xfig 為 LaTeX 文件建立圖形。一種方法是將圖形匯出為 LaTeX 文件。然而,這種方法有一些缺點:線只能以 30 度和 45 度的倍數的角度繪製,帶箭頭的線只能以 45 度的倍數的角度繪製,不支援幾種曲線等等。

另一方面,將檔案匯出為 PDF/LaTeX 或 PS/LaTeX,在繪製方面提供了更大的靈活性。以下是操作方法

  1. 在 xfig 中建立圖形。在您需要 LaTeX 文字的地方,例如數學公式,在文字框中輸入 LaTeX 字串。
  2. 使用“編輯”工具開啟每個文字框的屬性,並將“特殊標記”欄位中的選項更改為“特殊”。這告訴 LaTeX 在開啟圖形時解釋這些文字框。
  3. 轉到“檔案”->“匯出”,並將檔案匯出為 PDF/LaTeX(兩部分)或 PS/LaTeX(兩部分),具體取決於您使用 pdflatex 還是 pslatex 編譯檔案。
  4. 在您的 LaTeX 文件中,圖片應該放置的地方,使用以下程式碼,其中“test”替換為影像的名稱
    \begin{figure}
     \centering
     \input{test.pdf_t}
     \caption{Your figure}
     \label{figure:example}
    \end{figure}
    

    請注意,這就像包含圖片一樣,只是我們使用\includegraphics,而是使用\input。如果匯出到 PS/LaTeX,則要包含的副檔名將是 .pstex_t 而不是 .pdf_t。

  5. 確保在檔案中包含包 graphicxcolor,使用 \usepackage 命令,緊接在 \documentclass 命令之後,如下所示
    \usepackage{graphicx}
    \usepackage{color}
    

搞定!

有關使用 xfig 與 LaTeX 的更多詳細資訊,請參閱 xfig 使用者手冊這一章

其他工具

商業向量圖形軟體,如 Adobe Illustrator、CorelDRAW 和 FreeHand,通常用於讀取寫入 EPS 圖形。但是,這些產品僅限於 Windows 和 Mac OS X 平臺。

光柵圖形

[編輯 | 編輯原始碼]
Adobe Photoshop

Photoshop 可以儲存為 EPS。

GIMP

GIMP 具有圖形使用者介面,並且是跨平臺的。它可以儲存為 EPS 和 PDF。

繪圖和圖表

[編輯 | 編輯原始碼]
通用地圖工具 (GMT)

通用地圖工具 (GMT),地圖和各種高度可定製的繪圖。

Gnumeric

Gnumeric,電子表格具有 SVG、EPS、PDF 匯出功能

Gnuplot

Gnuplot,自 1986 年以來一直在生成科學圖形。如果您想製作數學繪圖,那麼 Gnuplot 可以儲存為任何格式。與 PGF/TikZ 配合使用可以獲得最佳效果。

matplotlib

matplotlib,用 python 編寫的繪相簿,具有 PDF 和 EPS 匯出功能。另一方面,它也具有 PGF 匯出功能。有一些技巧可以將除 EPS 以外的格式匯入 DVI 文件,但它們非常複雜。另一方面,將任何影像轉換為 EPS 非常簡單,因此不值得考慮它們。

R

R,統計和科學圖形。

編輯 EPS 圖形

[編輯 | 編輯原始碼]

如上所述,可以從外部程式將圖形內容作為 EPS 檔案匯入 LaTeX。但有時您想編輯或潤色這些圖形檔案。EPS 檔案可以使用任何文字編輯器進行編輯,因為它以 ASCII 格式進行格式化。在文字編輯器中,您可以實現簡單的操作,例如替換字串、更改邊界框或略微移動專案,但任何進一步的操作都變得很麻煩。向量圖形編輯器(如 Inkscape)也可能能夠匯入 EPS 檔案以進行後續編輯。這種方法也更容易編輯。但是,匯入過程偶爾會修改原始 EPS 影像。

註釋和參考文獻

[編輯 | 編輯原始碼]
  1. Johan B. C. Engelen. "如何在 LaTeX 中包含 SVG 圖片" (PDF). mirrorcatalogs.com.
  2. Philip Ilten. "CTAN 上的 svg 包". ctan.org.


上一頁: 頁面佈局 索引 下一頁: 浮動體、圖形和標題
華夏公益教科書