> For the complete documentation index, see [llms.txt](https://overleaf-pro.ayaka.space/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://overleaf-pro.ayaka.space/latex/zh-tw/geng-duo-zhu-ti/28-inserting-images-es.md).

# 插入圖片 es

圖片是大多數科學文件中不可或缺的元素。LaTeX 提供了多種處理圖片的方法，讓它們呈現出你所需要的精確樣式。本文將說明如何加入最常見格式的圖片、如何將它們縮小或放大，以及如何在文件中為圖片加入引用。

## 簡介

以下是一個關於如何在 LaTeX 中匯入圖片的範例。

```latex
\documentclass{article}
\usepackage{graphicx}
\graphicspath{ {images/} }

\begin{document}
宇宙浩瀚而且似乎是均勻的，
在大範圍內，隨處可見。

\includegraphics{universe}

上方有一張星系的圖片
\end{document}
```

![InsertingImagesEx1.png](/files/e1a28fd1846ffbb35cb84d22ff8f131f6fff61c5)

LaTeX 本身沒有操作圖片的能力，因此必須匯入套件 **graphicx**. 若要使用該套件，請在文件前言加入下列一行

```latex
\usepackage{graphicx}
```

指令 `\graphicspath{ {images/} }` 會告訴 LaTeX 圖片儲存在名為 *images* 的資料夾中，位於目前目錄之下。

指令 `\includegraphics{universe}` 是負責將圖片加入文件的指令。在這裡， *universe* 是圖片檔名，不含副檔名；因此 *universe.PNG* 會變成 *universe*。圖片檔名不應包含空白字元，也不應有多個標點符號。

注意： *可以寫入檔案副檔名，但建議* 省略它。如果省略副檔名，LaTeX 會搜尋所有支援的格式。更多細節請參見 [產生高解析度與低解析度圖片](#generando-imgenes-en-alta-y-baja-resolucin).

&#x20; [在 Overleaf 中開啟範例](https://www.sharelatex.com/project/new/template?zipUrl=/project/52f4102815577d644c0017fb/download/zip\&templateName=InsertingImages\&compiler=pdflatex)

## 圖片資料夾的路徑

當處理包含多張圖片的文件時，為了讓專案保持井然有序，一種做法是將它們分別存放在獨立資料夾中。

在前言中的範例裡，可透過指令 `\graphicspath{ {images/} }` ，它會告訴 LaTeX 到資料夾中尋找圖片 *images*。路徑是 *相對* 於目前工作目錄。

資料夾的路徑可以是 ***相對*** （建議）如果資料夾與主要 .tex 檔位於同一目錄或某個子資料夾中；也可以是 ***絕對*** ，若需要精確指定路徑。例如：

```latex
%Windows 格式的絕對路徑：
\graphicspath{ {c:/user/images/} }

%Unix 類型格式（Linux、OsX）的絕對路徑
\graphicspath{ {/home/user/images/} }
```

請注意，此指令需要右斜線 `/` 作為結尾，且路徑必須放在兩對大括號之間。

如果為了更有條理而將圖片存放在超過一個資料夾中，也可以設定多個路徑。例如，若有兩個資料夾，一個叫做 *images1* 而另一個是 *images2*，請使用指令

```latex
\graphicspath{ {images1/}{images2/} }</code>
```

如果未指定任何路徑，LaTeX 會在目前資料夾中搜尋圖片，也就是 .tex 檔所在的位置。

&#x20; [在 Overleaf 中開啟範例](https://www.sharelatex.com/project/new/template?zipUrl=/project/52f4102815577d644c0017fb/download/zip\&templateName=InsertingImages\&compiler=pdflatex)

## 調整圖片大小與旋轉圖片

如果在 LaTeX 中匯入圖片時想指定額外參數來修改圖片的寬度、高度、位置等，就可以使用以下語法：

```latex
Overleaf 是一個很棒的線上編輯專業工具，
可用來分享與備份你的 \LaTeX 專案。它也提供相當
完整的說明文件。

\includegraphics[scale=1.5]{lion-logo}
```

![InsertingImagesEx2.png](/files/3420d1cc728b9f594afdcac7c355f42f2944bfc8)

指令 `\includegraphics[scale=1.5]{lion-logo}` 會將圖片 *lion-logo* 加入文件中；額外參數 `scale=1.5` 會將圖片縮放為原始大小的 1.5 倍。

也可以將圖片調整為指定的高度與寬度。

```latex
Overleaf 是一個很棒的線上編輯專業工具，
可用來分享與備份你的 \LaTeX 專案。它也提供相當
完整的說明文件。

\includegraphics[width=3cm, height=4cm]{lion-logo}
```

![InsertingImagesEx3.png](/files/3f336e4565622b71166c0b40d75a34937af6c9cd)

如你大概已經猜到的，方括號內的參數 `[width=3cm, height=4cm]` 定義圖片的寬度與高度。可以使用 [不同的單位](#gua-de-referencia) 來作為這些參數的度量單位。若只設定 *width*，高度將按比例縮放，以維持圖片的外觀比例。

也可以指定圖片相對於文件中其他元素的長度。例如，如果你希望圖片和文字具有相同的寬度：

```latex
Overleaf 是一個很棒的線上編輯專業工具，
可用來分享與備份你的 \LaTeX 專案。它也提供相當
完整的說明文件。

\includegraphics[width=\textwidth]{universe}
```

![InsertingImagesEx5.png](/files/2a745dc4a490a1d5995f178b8efb670112b5e494)

除了 `\textwidth` 之外，你也可以使用 LaTeX 預設包含的其他任何單位： *\columnsep, \linewidth, \textheight, \paperheight, etc*。請參閱 [參考指南](#gua-de-referencia) 以獲得更完整的單位說明。

在文件中加入圖片時，另一個非常常見的選項是將圖片旋轉。這在 LaTeX 中很容易做到：

```latex
Overleaf 是一個很棒的線上編輯專業工具，
可用來分享與備份你的 \LaTeX 專案。它也提供相當
完整的說明文件。

\includegraphics[scale=1.2, angle=45]{lion-logo}
```

![InsertingImagesEx4.png](/files/f50092743507846a879e2ad3096911f69c116b57)

參數 `angle=45` 會將圖片逆時針旋轉 45 度。若要順時針旋轉圖片，請使用負數。

&#x20; [在 Overleaf 中開啟範例](https://www.sharelatex.com/project/new/template?zipUrl=/project/52f4102815577d644c0017fb/download/zip\&templateName=InsertingImages\&compiler=pdflatex)

## 圖片定位

在上一節中已說明如何將圖片插入文件，但有時文件中的圖片與文字搭配可能不如你預期。要改變這一點，需要使用一個新的環境：

```latex
在下一個範例中，圖形將會被放置在
這句話的正下方。

\begin{figure}[h]
\includegraphics[width=8cm]{Plot}
\end{figure}
```

![InsertingImagesEx6.png](/files/a3bb1c0eab2005c12954fc4459035e115122f7c2)

環境 `figure` 用來將圖片作為文件中的浮動元素顯示。這表示只要把圖片放入環境中 *figure* ，你就不必再擔心它會出現在哪裡，LaTeX 會以最適合文件流程的方式將它排版。

雖然一開始這聽起來很不錯，但有時候你會希望更精確地控制圖片出現的位置。可以使用額外參數來設定圖形的定位。在這個範例中， `begin{figure}[h]`，方括號內的參數會設定圖形的位置 *這裡* （here，英文中的「這裡」）。下面是一個列出可能位置值的表格。

| 參數     | 位置                                               |
| ------ | ------------------------------------------------ |
| h      | 將浮動元素設為「這裡」。也就是大致放在它出現在程式碼中的同一位置（不過，定位不一定完全精確）   |
| 的區域變數中 | 將圖形插入頁面頂端。                                       |
| b      | 將圖形插入頁面底端。                                       |
| p      | 將浮動元素插入一個獨立頁面，該頁面只包含圖形。                          |
| !      | 覆寫 LaTeX 用來決定圖片「良好」位置的參數。                        |
| H      | 將浮動元素精確設在程式碼中出現的位置，需要匯入套件 `float`。這在某種程度上等同於 h!。 |

在下一個範例中，你可以看到一張出現在文件開頭的圖片，儘管產生它的程式碼位於文件末尾。

```latex
在這張圖中，你可以看到一個長條圖，顯示
一項問卷調查的結果，該調查涉及一些重要的
隨著時間推移所研究的資料。

\begin{figure}[t]
\includegraphics[width=8cm]{Plot}
\centering
\end{figure}
```

![InsertingImagesEx7.png](/files/e0a459034d5d603c9bceeb88823af878ca6aa131)

額外的指令 `\centering` 負責將圖片置中。預設的對齊方式是靠左。

也可以讓文字環繞圖形。當文件包含小圖片時，這樣可以讓文字看起來更美觀。

```latex
\begin{wrapfigure}{r}{0.25\textwidth} %這個圖形會在右側
    \centering
    \includegraphics[width=0.25\textwidth]{mesh}
\end{wrapfigure}

繪製二變數函數有幾種方式，
視你感興趣的資訊而定。例
如，若你想看函數的網格，使其
更容易觀察導數，你可以使用像
左邊那樣的圖。

\begin{wrapfigure}{l}{0.25\textwidth}
    \centering
    \includegraphics[width=0.25\textwidth]{contour}
\end{wrapfigure}

另一方面，如果你只對
某些值感興趣，你可以使用等高線圖，
你可以使用等高線圖，你可以使用等高線
圖，你可以使用等高線圖，你可以使用
等高線圖，你可以使用等高線圖，
你可以使用等高線圖，就像左邊那一張。

另一方面，如果你只對
某些值感興趣，你可以使用等高線圖，
你可以使用等高線圖，你可以使用等高線
圖，你可以使用等高線圖，你可以使用
等高線圖，你可以使用等高線圖，
你可以使用等高線圖，
就像左邊那一張。
```

![InsertingImagesEx8.png](/files/41307896bd5aa91210a4d0195352b010c863fa6b)

要使範例中的指令能運作，必須匯入套件 **wrapfig**. 請在前言中加入下列一行

```latex
\usepackage{wrapfig}
```

匯入套件後，就可以使用環境 *wrapfigure* 可透過指令 `\begin{wrapfigure}{l}{0.25\textwidth} \end{wrapfigure}`. 請注意，該環境在大括號之間還有兩個額外參數。以下將更詳細說明程式碼。

**{l}**

設定圖形的對齊方式。l 代表左側，r 代表右側。更進一步地，如果使用 book 類別或類似類別，則可用 o 代表頁面外側邊緣、i 代表頁面內側邊緣，取代 l 和 r。

**{0.25\textwidth}**

這會設定包含圖片的框的寬度。這不是圖片本身的寬度，圖片本身的寬度應在 includegraphics 指令中設定。範例中使用的是相對單位，但也可以使用一般單位（cm、mm、in 等）。請參閱參考指南以查看可用單位清單。

**\centering**

這點前面已經說明過了，但在上一個範例中，圖片會相對於其包含的框置中，而不是相對於頁面置中。

若想獲得更完整的圖片定位資訊，請參閱文章 [圖片與表格的定位](/latex/zh-tw/tu-biao-yu-biao-ge/02-positioning-images-and-tables.md)

&#x20; [在 Overleaf 中開啟範例](https://www.sharelatex.com/project/new/template?zipUrl=/project/52f4102815577d644c0017fb/download/zip\&templateName=InsertingImages\&compiler=pdflatex)

## 新增標籤、圖說與參照

能夠加入帶有圖片簡短說明的圖說，以及之後可用來指向圖片的標籤，對於處理非常長的文件時非常有用。

### 圖說

先從一個新增圖說的範例開始：

```latex
\begin{figure}[h]
\caption{Example of a parametric plot ($\sin (x), \cos(x), x$)}
\centering
\includegraphics[width=0.5\textwidth]{spiral}
\end{figure}
```

![InsertingImagesEx9.png](/files/9280aee723c40d978df34202b6e0b818e924138a)

很簡單，只要加入指令 `\caption{某個圖說}` 並在大括號中寫入要顯示的文字。圖說的輸出位置取決於該指令插入的位置；如果它位於 *includegraphics* 指令之上，圖說就會出現在圖片上方；如果它位於該指令之下，圖說就會出現在圖形下方。

圖說也可以放在圖形旁邊。套件 **sidecap** 可讓你使用與前一個範例非常相似的程式碼來加入文字。

```latex
\documentclass{article}
\usepackage[rightcaption]{sidecap}

\usepackage{graphicx} %用於管理圖片的套件
\graphicspath{ {images/} }

\begin{SCfigure}[0.5][h]
\caption{一個參數式繪圖範例。
         這則圖說將位於右側}
\includegraphics[width=0.6\textwidth]{spiral}
\end{SCfigure}
```

![InsertingImagesEx10.png](/files/c3bdda6ce73759dcd485e556a980564e238d2eea)

這個範例中有兩個新指令：

**\usepackage\[rightcaption]{sidecap}**

如你大概已經知道的，這個指令會匯入名為 sidecap 的套件，但還有一個額外參數：rightcaption。這個參數決定圖說的輸出位置。在這種情況下是圖片右側；也可以使用 leftcaption 將圖說移到左側。在使用 book 類別的文件中，另外還可以使用 outercaption 和 innercaption，將圖說輸出在相對於頁面邊緣的外側或內側。

**\begin{SCfigure}\[0.5]\[h] \end{SCfigure}**

定義一個類似 figure 的環境。第一個參數是圖說相對於圖片大小的寬度。第二個參數 h 的功能與 figure 環境中的 h 相同。更多資訊請參閱圖片定位章節。

如果想要的話，還可以更進階地控制圖說格式。請參閱 [延伸閱讀](#lecturas-adicionales) 以查看更多參考資料。

### 標籤與交叉參照

圖形和 LaTeX 文件中的許多其他元素（方程式、表格、圖表等）一樣，都可以在文字中被引用。這很容易做到，只要在 *figure* 或 *SCfigure*環境中加入標籤，然後使用該標籤來引用圖形。

```latex
\begin{figure}[h]
    \centering
    \includegraphics[width=0.25\textwidth]{mesh}
    \caption{一個不錯的圖}
    \label{fig:mesh1}
\end{figure}

如你在圖 \ref{fig:mesh1} 中所見，該
函數在 0 附近增長。此外，在第 \pageref{fig:mesh1}
頁也有相同的範例。
```

![InsertingImagesEx11.png](/files/7745195daf28af4040e3fb0ee87db50891395f44)

這個範例中有三個會產生交叉參照的指令。

**\label{fig:mesh1}**

設定圖形的標籤。由於標籤可用於文件中多種不同類型的元素，因此最好加上前綴，例如範例中的 fig:。

**\ref{fig:mesh1}**

這個指令會印出指派給圖形的編號。編號會自動產生，若之後在被引用的圖形之前插入了新的圖形，這些編號也會更新。

**\pageref{fig:mesh1}**

印出所引用圖片所在的頁碼。

指令 `\caption` 要加入標籤，必須先用這個會新增圖說的指令。

LaTeX 的另一個重要功能是能自動產生 *圖形清單*。這可輕鬆透過下列方式達成：

```latex
\listoffigures
```

![InsertingImagesEx12.png](/files/24044d06cd15f5f3a383b418ac590015df88b5df)

這個指令只適用於有圖說的圖形，因為它會使用圖說來產生表格。上一個範例列出了本文中使用的圖片。

重要說明： *使用 LaTeX 交叉參照時，專案必須編譯兩次，否則參照、頁碼參照以及圖形清單都無法正常運作*.

&#x20; [在 Overleaf 中開啟範例](https://www.sharelatex.com/project/new/template?zipUrl=/project/52f4102815577d644c0017fb/download/zip\&templateName=InsertingImages\&compiler=pdflatex)

## 產生高解析度與低解析度圖片

目前，在指令中輸入圖片檔名時， *\includegraphics* 我們省略了檔案副檔名。不過這並非必要，雖然有時非常有用。如果省略副檔名，LaTeX 會在預設的圖片目錄中搜尋任何受支援的圖片類型，搜尋會依特定順序進行，而這個順序可以修改。

這對於將文件從草稿版轉換為最終版非常有用。在草稿階段（當你撰寫文章、書籍、報告等時），通常希望使用低解析度圖片（通常是 .png 格式），以便文件編譯得更快。在最終版本中，則會希望加入高解析度圖片，以獲得高品質文件。

這可以透過以下方式達成：

* 在指令中不要指定檔案副檔名 *\includegraphics*，以及
* 在前言中指定副檔名的順序

因此，如果你有同一張圖片的兩個版本，例如 venndiagram.pdf（高解析度）與 venndiagram.png（低解析度），可以在撰寫與除錯文件時，在前言中加入以下一行 -

```latex
  \DeclareGraphicsExtensions{.png,.pdf}
```

前述指令可確保：如果找到兩個同名但副檔名不同的圖片，則會使用 .png 檔；若因某種原因該檔案消失，pdf 版本將成為下一個選項。

當文件完成後，若只想使用高解析度版本，應將決定副檔名順序的那一行改為：

```latex
  \DeclareGraphicsExtensions{.pdf,.png}
```

甚至可以進一步改進前述技巧：如果 PDF 事先尚未轉換成 PNG，我們可以要求 LaTeX 在編譯文件時自動產生低解析度的 .png 圖片。要做到這一點，必須在前言中的下列內容之後加入： `\usepackage{graphicx}`.

```latex
  \usepackage{epstopdf}
  \epstopdfDeclareGraphicsRule{.pdf}{png}{.png}{convert #1 \OutputFile}
  \DeclareGraphicsExtensions{.png,.pdf}
```

如果 venndiagram2.pdf 存在但 venndiagram2.png 不存在，則會建立檔案 vendiagramm2-pdf-converted-to.png 並改載入它。指令 *convert #1* 負責轉換

如果選擇這個方法，有幾件事要記住：

* 要讓自動轉換運作，必須執行 *pdflatex* 並加上選項 `--shell-escape`.
* 在正式版本中，不要忘了將下列一行註解掉 `\epstopdfDeclareGraphicsRule`，如此一來就只會載入高解析度圖片。另外，也要記得更改優先順序。

&#x20; [在 Overleaf 中開啟範例](https://www.sharelatex.com/project/new/template?zipUrl=/project/52f4102815577d644c0017fb/download/zip\&templateName=InsertingImages\&compiler=pdflatex)

## 參考指南

**LaTeX 中的單位與度量**

| 縮寫           | 定義                           |
| ------------ | ---------------------------- |
| pt           | 點（point）是預設的長度單位。約為 0.3515mm |
| mm           | 一毫米                          |
| cm           | 一公分                          |
| 中插入一個        | 一英吋                          |
| ex           | 一個的高度 **x** 以目前字型            |
| em           | 一個的寬度 **m** 以目前字型            |
| \columnsep   | 欄間距                          |
| \columnwidth | 一欄的寬度                        |
| \linewidth   | 目前環境中的行寬                     |
| \paperwidth  | 紙張寬度                         |
| \paperheight | 紙張高度                         |
| \textwidth   | 文字區寬度                        |
| \textheight  | 文字區高度                        |
| \unitlength  | 環境中的長度單位 *picture*           |

**關於 LaTeX 可使用的圖片類型**

**latex**

如果使用 latex 指令編譯文件，只能使用 EPS 格式的圖片，這是一種向量格式。

**pdflatex**

如果使用 pdflatex 指令編譯文件以產生 PDF，則可以使用多種圖片類型-

```
   JPG：插入照片的最佳選擇
   PNG：插入圖表的最佳選擇（如果因某些原因無法使用向量圖形）以及螢幕截圖
   PDF：雖然人們習慣將 PDF 用於文件，但一般而言，PDF 可以只由一張之後可再匯入的圖片組成。
   EPS：EPS 圖片可透過 epstopdf 套件加入（此套件只需安裝在電腦上，安裝完成後，.tex 檔中就不需要任何額外指令）
```

**向量圖形還是點陣圖？**

圖片可以以點陣圖或向量圖形的格式加入。一般來說不必特別擔心，但如果可以選擇格式，就要記住：對於向量圖形，最好儲存為 PDF 或 EPS；而對於點陣圖，則建議使用 JPG 或 PNG。這是因為 PDF 或 EPS 格式檔案中的點陣圖會佔用大量儲存空間。

&#x20; [在 Overleaf 中開啟範例](https://www.sharelatex.com/project/new/template?zipUrl=/project/52f4102815577d644c0017fb/download/zip\&templateName=InsertingImages\&compiler=pdflatex)

## 延伸閱讀

更多資訊請參閱：

* [圖片與表格的定位](/latex/zh-tw/tu-biao-yu-biao-ge/02-positioning-images-and-tables.md)
* [表格與圖形清單](/latex/zh-tw/tu-biao-yu-biao-ge/03-lists-of-tables-and-figures.md)
* [單面與雙面文件](/latex/zh-tw/ge-shi-hua/08-single-sided-and-double-sided-documents.md)
* [LaTeX 中的長度](/latex/zh-tw/ge-shi-hua/01-lengths-in-latex.md)
* [**floatrow** 用於進階管理浮動元素（表格與圖形）圖說的套件](http://tug.ctan.org/tex-archive/macros/latex/contrib/floatrow/floatrow.pdf)
* [**sidecap** 套件文件，關於側邊圖說](ftp://ctan.tug.org/tex-archive/macros/latex/contrib/sidecap/sidecap.pdf)
* [**epstopdf** 套件文件（PDF 轉 EPS 轉換）](https://www.google.com/url?sa=t\&rct=j\&q=\&esrc=s\&source=web\&cd=3\&cad=rja\&ved=0CEEQFjAC\&url=http%3A%2F%2Fmirror.hmc.edu%2Fctan%2Fmacros%2Flatex%2Fcontrib%2Foberdiek%2Fepstopdf.pdf\&ei=N4v2UpK7D4eHqQHz2IDACg\&usg=AFQjCNG9CxIXjrbc22kl-8QweEXeEauFew\&sig2=qamKo3qpid8CEqzsHhpIrQ\&bvm=bv.60983673,d.aWM)


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://overleaf-pro.ayaka.space/latex/zh-tw/geng-duo-zhu-ti/28-inserting-images-es.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
