> 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/ge-shi-hua/13-using-colors-in-latex.md).

# 在 LaTeX 中使用顏色

## 簡介

本文說明如何透過以下方式在你的 LaTeX 文件中使用顏色： [`顏色`](https://ctan.org/pkg/color?lang=en) 或 [`xcolor`](https://ctan.org/pkg/xcolor?lang=en) 套件。請注意，以下內容的使用者層級文件收錄於 `顏色` 套件的文件中 [LaTeX 標準圖形套件組](http://mirrors.ctan.org/macros/latex/required/graphics/grfguide.pdf).

這兩個套件都提供一組共通的顏色操作指令，但 `xcolor` 更具彈性，且支援更多顏色模型，因此建議採用。

我們先從以下範例開始：

```latex
\documentclass{article}
\usepackage{xcolor}
\begin{document}
此範例示範使用 \texttt{xcolor} 套件的幾個例子
以變更 \LaTeX 中元素的顏色。

\begin{itemize}
\color{blue}
\item 第一項
\item 第二項
\end{itemize}

\noindent
{\color{red} \rule{\linewidth}{0.5mm}}
\end{document}
```

[在此開啟 `xcolor` Overleaf 中的範例](https://www.overleaf.com/docs?engine=pdflatex\&snip_name=A+basic+xcolor+package+example\&snip=%5Cdocumentclass%7Barticle%7D%0A%5Cusepackage%7Bxcolor%7D%0A%5Cbegin%7Bdocument%7D%0AThis+example+shows+some+instances+of+using+the+%5Ctexttt%7Bxcolor%7D+package+%0Ato+change+the+color+of+elements+in+%5CLaTeX.%0A%0A%5Cbegin%7Bitemize%7D%0A%5Ccolor%7Bblue%7D%0A%5Citem+First+item%0A%5Citem+Second+item%0A%5Cend%7Bitemize%7D%0A%0A%5Cnoindent%0A%7B%5Ccolor%7Bred%7D+%5Crule%7B%5Clinewidth%7D%7B0.5mm%7D%7D%0A%5Cend%7Bdocument%7D)

此範例會產生以下輸出：

![LaTeX 中 xcolor 套件的使用範例](/files/b83f8f729204e1e9a5079e3d7a384b05de847670)

在此範例中，套件 `xcolor` 是以以下方式匯入：

```latex
\usepackage{xcolor}
```

接著指令 `\color{blue}` 將 `藍色` 設定目前文字區塊的顏色。在此情況下，為 `itemize` 環境來繪製圖形。

由以下指令建立的水平線，其排版程式碼為 `\rule{\linewidth}{0.5mm}` 位於一個以 { 和 } 為界定的群組中，以保留 `\color{red}` 對該群組的局部效果。

## xcolor 套件提供的命名顏色

如 [xcolor 套件文件](http://mirrors.ctan.org/macros/latex/contrib/xcolor/xcolor.pdf)所述，下列命名顏色一律可用，無需載入任何套件選項：

![xcolor 套件中的顏色清單](/files/d195899e490d3e5a68d4c5c7b43febd49128bef5)

### 存取其他命名顏色

可透過以下 `xcolor` 套件選項存取其他命名顏色：

* `dvipsnames`：載入 68 種命名顏色（CMYK）
* `svgnames`：載入 151 種命名顏色（RGB）
* `x11names`：載入 317 種命名顏色（RGB）

例如，如果你寫：

```latex
\usepackage[dvipsnames]{xcolor}
```

你就可以使用下列命名顏色：

![由 xcolor 套件的 dvipsnames 選項載入的顏色](/files/6765209388049400d16043eea18a39515086f954)

請參閱 [xcolor 套件文件](http://mirrors.ctan.org/macros/latex/contrib/xcolor/xcolor.pdf) 以取得由以下項目提供的顏色表列清單： `svgnames` 以及 `x11names` 選項。

### 使用範例

以下範例使用透過 `dvipsnames` 選項。

```latex
\documentclass{article}
\usepackage[dvipsnames]{xcolor}
\begin{document}
此範例說明如何使用 \texttt{xcolor} 套件
來變更 \LaTeX{} 頁面元素的顏色。

\begin{itemize}
\color{ForestGreen}
\item 第一項
\item 第二項
\end{itemize}

\noindent
{\color{RubineRed} \rule{\linewidth}{0.5mm}}

文字的背景顏色也可以輕鬆設定為 \textcolor{red}{輕鬆地}。對於
例如，你可以改用 \colorbox{BurntOrange}{橘色背景}，然後繼續輸入。
\end{document}
```

[在此開啟 `**xcolor**` Overleaf 中的範例](https://www.overleaf.com/docs?engine=pdflatex\&snip_name=Basic+xcolor+package+example\&snip=%5Cdocumentclass%7Barticle%7D%0A%5Cusepackage%5Bdvipsnames%5D%7Bxcolor%7D%0A%5Cbegin%7Bdocument%7D%0AThis+example+shows+how+to+use+the+%5Ctexttt%7Bxcolor%7D+package+%0Ato+change+the+color+of+%5CLaTeX%7B%7D+page+elements.%0A%0A%5Cbegin%7Bitemize%7D%0A%5Ccolor%7BForestGreen%7D%0A%5Citem+First+item%0A%5Citem+Second+item%0A%5Cend%7Bitemize%7D%0A%0A%5Cnoindent%0A%7B%5Ccolor%7BRubineRed%7D+%5Crule%7B%5Clinewidth%7D%7B0.5mm%7D%7D%0A%0AThe+background+color+of+text+can+also+be+%5Ctextcolor%7Bred%7D%7Beasily%7D+set.+For+%0Ainstance%2C+you+can+change+use+an+%5Ccolorbox%7BBurntOrange%7D%7Borange+background%7D+and+then+continue+typing.%0A%5Cend%7Bdocument%7D)

此範例會產生以下輸出：

![xcolor 套件示範](/files/6727cf047b42a33cc287d50417b35680e73c4fe2)

範例中也使用了兩個新指令：

* `\textcolor{red}{輕鬆地}`：變更行內文字的顏色。此指令接受兩個參數：要使用的顏色，以及要變更顏色的文字。在範例中，單字 `輕鬆地` 是以 `紅色`.
* `\colorbox{BurntOrange}{橘色背景}`：變更作為第二個參數傳入之文字的背景顏色。在上面的範例中，片語 `橘色背景` 是以 `BurntOrange`.

## 在 color 套件中載入並使用命名顏色

你也可以使用 `顏色` 套件，並透過其 `usenames` 以及 `dvipsnames` 套件選項存取其他命名顏色：

```latex
\usepackage[usenames,dvipsnames]{color}
```

以下程式碼使用 `顏色` 套件，以套用前一個 `xcolor` 套件範例中使用的相同命名顏色。

```latex
\documentclass{article}
\usepackage[usenames,dvipsnames]{color} %使用 color 套件，而不是 xcolor
\begin{document}
此範例說明如何使用 \texttt{\bfseries color} 套件
來變更 \LaTeX{} 頁面元素的顏色。

\begin{itemize}
\color{ForestGreen}
\item 第一項
\item 第二項
\end{itemize}

\noindent
{\color{RubineRed} \rule{\linewidth}{0.5mm}}

文字的背景顏色也可以輕鬆設定為 \textcolor{red}{輕鬆地}。對於
例如，你可以改用 \colorbox{BurntOrange}{橘色背景}，然後繼續輸入。
\end{document}
```

[在此開啟 `**color**` Overleaf 中的範例](https://www.overleaf.com/docs?engine=pdflatex\&snip_name=Basic+color+package+example\&snip=%5Cdocumentclass%7Barticle%7D%0A%5Cusepackage%5Busenames%2Cdvipsnames%5D%7Bcolor%7D+%25using+the+color+package%2C+not+xcolor%0A%5Cbegin%7Bdocument%7D%0AThis+example+shows+how+to+use+the+%5Ctexttt%7B%5Cbfseries+color%7D+package+%0Ato+change+the+color+of+%5CLaTeX%7B%7D+page+elements.%0A%0A%5Cbegin%7Bitemize%7D%0A%5Ccolor%7BForestGreen%7D%0A%5Citem+First+item%0A%5Citem+Second+item%0A%5Cend%7Bitemize%7D%0A%0A%5Cnoindent%0A%7B%5Ccolor%7BRubineRed%7D+%5Crule%7B%5Clinewidth%7D%7B0.5mm%7D%7D%0A%0AThe+background+color+of+text+can+also+be+%5Ctextcolor%7Bred%7D%7Beasily%7D+set.+For+%0Ainstance%2C+you+can+change+use+an+%5Ccolorbox%7BBurntOrange%7D%7Borange+background%7D+and+then+continue+typing.%0A%5Cend%7Bdocument%7D)

此範例產生與前一個相同的輸出 `xcolor` 版本：

![color 套件示範](/files/94eb435b4646ee2af21d8bae1bedcab4a675ea32)

## 驅動程式與顏色

以顏色排版文字或數學並非 TeX 原始設計的一部分；相反地，色彩的使用/應用是交由外部「驅動程式」處理，這些驅動程式會將 TeX 原始的輸出檔格式（DVI）轉換為 PostScript 或 PDF。為了讓顏色能正常運作，必須使用一個稱為 `\special` 的 TeX 內建指令，將程式碼/資料通過排版流程並嵌入輸出檔。當所選的驅動程式（軟體）處理排版後的輸出時，它會偵測到嵌入的程式碼/資料並加以處理，以達成使用者所要的效果——例如使用顏色。

時代已經改變，PDF 如今已是 TeX 引擎所使用最常見的輸出格式，早已取代舊式 DVI 驅動程式與 PostScript 的產生。使用者在排版 LaTeX 文件時也有更多可選的 TeX 引擎，最值得注意的是 pdfTeX、XeTeX 或 LuaTeX/LuaHBTeX，因此仍然重要的是要考量這些 TeX 引擎之間的差異——確保使用正確的機制把色彩資料（PDF 指令）插入其 PDF 檔案中。為了支援並兼容傳統 DVI 輸出格式及更廣泛的 TeX 引擎與工作流程環境，如有需要，你可以設定 `顏色` 或 `xcolor` 這些套件使用特定的「驅動程式」，使 LaTeX 能以適當的方法產生色彩資料。

### color 與 xcolor 的驅動程式

該 `顏色` 套件原生支援下列驅動程式選項：

* `dvipdfmx`, `dvips`, `dvisvgm`, `luatex`, `pdftex` 以及 `xetex`

另有其他選項，如 [`顏色` 套件文件所述](https://mirror.ox.ac.uk/sites/ctan.org/macros/latex/required/graphics/grfguide.pdf).

該 `xcolor` 套件提供下列驅動程式選項：

* `dvips`, `xdvi`, `dvipdf`, `dvipdfm`, `dvipdfmx`, `luatex`, `pdftex`, `dvipsone`, `dviwindo`, `emtex`, `dviwin`, `oztex`, `textures`, `pctexps`, `pctexwin`, `pctexhp`, `pctex32`, `truetex`, `tcidvi`, `vtex` 以及 `xetex`.

### 自動偵測顏色驅動程式

在排版文件時，LaTeX 會讀取一個名為 `color.cfg` 其中包含可判斷你是否正在執行 pdfTeX、XeTeX 或 LuaTeX 的程式碼，並自動載入適當的驅動程式（`.def` 檔案）供你使用，因此你不需要 *需要* 為那些引擎指定驅動程式套件選項。

### 使用 dvisvgm 驅動程式建立 SVG 檔案的進階範例

以下範例使用 `顏色` 套件，並以載入命名顏色及 `dvisvgm` 驅動程式的選項，透過 SVG 程式碼輸出顏色定義/資料：

```latex
\usepackage[dvisvgm, usenames, dvipsnames]{color}
```

具體來說，Overleaf 排版產生的輸出檔會透過一個名為 [`dvisvgm`](https://dvisvgm.de/)的程式轉換為 SVG；該程式屬於 TeX Live，且可在我們的伺服器上使用。要執行 `dvisvgm`，在頁面排版完成後，我們會使用一個 [`latexmkrc` 檔案](/latex/zh-tw/shen-ru-wen-zhang/28-how-to-use-latexmkrc-with-overleaf.md) ，該檔案會在你於 Overleaf 開啟以下程式碼時建立：

```latex
\documentclass{article}
\usepackage[dvisvgm, usenames, dvipsnames]{color}
\title{建立 SVG 圖形}
\author{Overleaf}
\begin{document}
\maketitle
你好，{\color{Apricot}Apricot}，現在是 {\color{DarkOrchid} DarkOrchid}，但如果我們使用 {\color{JungleGreen}JungleGreen}——也許會更好？
\end{document}
```

[開啟此範例以建立 SVG 檔案](https://www.overleaf.com/docs?engine=latex_dvipdf\&snip_name\[]=main.tex\&snip\[]=%5Cdocumentclass%7Barticle%7D%0A%5Cusepackage%5Bdvisvgm%2C+usenames%2C+dvipsnames%5D%7Bcolor%7D%0A%5Ctitle%7BCreating+SVG+graphics%7D%0A%5Cauthor%7BOverleaf%7D%0A%5Cbegin%7Bdocument%7D%0A%5Cmaketitle%0AHello%2C+%7B%5Ccolor%7BApricot%7Din+Apricot%7D+and+now+in+%7B%5Ccolor%7BDarkOrchid%7D+DarkOrchid%7D+but+perhaps+it+might+look+nicer+if+we+use+%7B%5Ccolor%7BJungleGreen%7DJungleGreen%7D---or+may+not%3F%0A%5Cend%7Bdocument%7D\&snip_name\[]=latexmkrc\&snip\[]=END+%7B%0Asystem%28%22dvisvgm+-n+-o+mygraphic.svg+.%2Foutput.dvi%22%29%0A%7D\&main_document=main.tex)

當 Overleaf 完成編譯後，你就可以存取名為 `mygraphic.svg`的 SVG 圖形，只要選取 `記錄與輸出` 並選擇 `其他記錄與檔案` 下拉選單：

![在 Overleaf 上存取已產生的檔案](/files/32410c9cb825019ce5de75c725700e3da6ad76e4)

## 建立你自己的顏色

你可以定義自己的顏色，而顏色的定義方式取決於所選的顏色模型。以下範例使用 4 種顏色模型。

```latex
\documentclass{article}
\usepackage[dvipsnames]{xcolor}

\definecolor{mypink1}{rgb}{0.858, 0.188, 0.478}
\definecolor{mypink2}{RGB}{219, 48, 122}
\definecolor{mypink3}{cmyk}{0, 0.7808, 0.4429, 0.1412}
\definecolor{mygray}{gray}{0.6}

\begin{document}
以不同顏色模型定義的使用者自訂顏色：

\begin{enumerate}
\item \textcolor{mypink1}{以 rgb 定義的粉紅色}
\item \textcolor{mypink2}{以 RGB 定義的粉紅色}
\item \textcolor{mypink3}{以 cmyk 定義的粉紅色}
\item \textcolor{mygray}{以 gray 定義的灰色}
\end{enumerate}
\end{document}
```

[在 Overleaf 中開啟此範例](https://www.overleaf.com/docs?engine=pdflatex\&snip_name=Example+of+user-defined+colours\&snip=%5Cdocumentclass%7Barticle%7D%0A%5Cusepackage%5Bdvipsnames%5D%7Bxcolor%7D%0A%0A%5Cdefinecolor%7Bmypink1%7D%7Brgb%7D%7B0.858%2C+0.188%2C+0.478%7D%0A%5Cdefinecolor%7Bmypink2%7D%7BRGB%7D%7B219%2C+48%2C+122%7D%0A%5Cdefinecolor%7Bmypink3%7D%7Bcmyk%7D%7B0%2C+0.7808%2C+0.4429%2C+0.1412%7D%0A%5Cdefinecolor%7Bmygray%7D%7Bgray%7D%7B0.6%7D%0A%0A%5Cbegin%7Bdocument%7D%0AUser-defined+colors+with+different+color+models%3A%0A%0A%5Cbegin%7Benumerate%7D%0A%5Citem+%5Ctextcolor%7Bmypink1%7D%7BPink+with+rgb%7D%0A%5Citem+%5Ctextcolor%7Bmypink2%7D%7BPink+with+RGB%7D%0A%5Citem+%5Ctextcolor%7Bmypink3%7D%7BPink+with+cmyk%7D%0A%5Citem+%5Ctextcolor%7Bmygray%7D%7BGray+with+gray%7D%0A%5Cend%7Benumerate%7D%0A%5Cend%7Bdocument%7D)

此範例會產生以下輸出：

![建立使用者自訂顏色的 LaTeX 範例](/files/2d1bc1f74d30c1e251f07f5bab7669575764c27d)

指令 `\definecolor` 會接受三個參數：新顏色的名稱、模型，以及顏色定義。粗略來說，每個數字代表你向構成最終顏色的混合物中加入多少該顏色。

* `**rgb**`：紅、綠、藍。以逗號分隔的三個 0 到 1 之間的值定義顏色的各個組成分量。
* `**RGB**`：與 `rgb`相同，但數字是介於 0 到 255 的整數。
* `**cmyk**`：青、洋紅、黃以及黑。以逗號分隔的四個 0 到 1 之間的數字，根據以下項目決定顏色： [減色 CMYK 模型](https://en.wikipedia.org/wiki/CMYK_color_model) ，為商業印刷機所使用。
* `**gray**`：灰階。單一介於 0 到 1 之間的數字。

在範例中， `mypink1`, `mypink2` 以及 `mypink3` 雖然是用不同模型定義的同一種顏色。你其實可以看出由 `cmyk` 所定義的顏色略有不同。

以任一模型定義的顏色之後都可在文件中使用，不僅可設定文字顏色，也可用於任何以顏色作為參數的其他元素，例如 [表格](/latex/zh-tw/tu-biao-yu-biao-ge/01-tables.md#colouring-a-table-28cells2c-rows2c-columns-and-lines29) （你必須加入 `表格` 選項到 `xcolor`), [以 TikZ 建立的圖形元素](/latex/zh-tw/tu-biao-yu-biao-ge/05-tikz-package.md), [圖表](/latex/zh-tw/te-ding-ling-yu/08-pgfplots-package.md), [多欄文件中的垂直分隔線](/latex/zh-tw/ge-shi-hua/09-multiple-columns.md#inserting-vertical-rulers) 以及 [程式碼清單](/latex/zh-tw/ge-shi-hua/11-code-listing.md#code-styles-and-colours).

### 僅 xcolor 支援的顏色模型

該 `xcolor` 套件提供額外指令，支援更多顏色模型與更方便的顏色混合，如以下範例所示：

```latex
\documentclass{article}
\usepackage[dvipsnames]{xcolor}
\colorlet{LightRubineRed}{RubineRed!70}
\colorlet{Mycolor1}{green!10!orange}
\definecolor{Mycolor2}{HTML}{00F9DE}
\begin{document}
本文提供多個範例，說明如何使用 \texttt{xcolor} 套件
來變更 \LaTeX{} 頁面元素的顏色。

\begin{itemize}
\item \textcolor{Mycolor1}{第一項}
\item \textcolor{Mycolor2}{第二項}
\end{itemize}

\noindent
{\color{LightRubineRed} \rule{\linewidth}{1mm}}

\noindent
{\color{RubineRed} \rule{\linewidth}{1mm}}
\end{document}
```

[在 Overleaf 中開啟此範例](https://www.overleaf.com/docs?engine=pdflatex\&snip_name=Custom+colours+with+xcolor\&snip=%5Cdocumentclass%7Barticle%7D%0A%5Cusepackage%5Bdvipsnames%5D%7Bxcolor%7D%0A%5Ccolorlet%7BLightRubineRed%7D%7BRubineRed%2170%7D%0A%5Ccolorlet%7BMycolor1%7D%7Bgreen%2110%21orange%7D%0A%5Cdefinecolor%7BMycolor2%7D%7BHTML%7D%7B00F9DE%7D%0A%5Cbegin%7Bdocument%7D%0AThis+document+presents+several+examples+showing+how+to+use+the+%5Ctexttt%7Bxcolor%7D+package+%0Ato+change+the+color+of+%5CLaTeX%7B%7D+page+elements.%0A%0A%5Cbegin%7Bitemize%7D%0A%5Citem+%5Ctextcolor%7BMycolor1%7D%7BFirst+item%7D%0A%5Citem+%5Ctextcolor%7BMycolor2%7D%7BSecond+item%7D%0A%5Cend%7Bitemize%7D%0A%0A%5Cnoindent%0A%7B%5Ccolor%7BLightRubineRed%7D+%5Crule%7B%5Clinewidth%7D%7B1mm%7D%7D%0A%0A%5Cnoindent%0A%7B%5Ccolor%7BRubineRed%7D+%5Crule%7B%5Clinewidth%7D%7B1mm%7D%7D%0A%5Cend%7Bdocument%7D)

此範例會產生以下輸出：

![xcolor 套件產生的自訂顏色](/files/b5aae015a907c50ae73a4f978a85627fd98836e8)

在此範例中定義了三種新顏色，各自以不同方式定義。

* `\colorlet{LightRubineRed}{RubineRed!70}`：建立一個名為 `LightRubineRed` 的顏色，這個顏色具有原始 `RubineRed` 顏色 70% 的強度。你可以把它視為 70% 的 RubineRed 與 30% 白色的混合。這樣定義顏色可讓你從主要顏色衍生出不同色調——這在企業品牌識別中很常見。在範例中，你可以看到原始的 `RubineRed` 以及新的 `LightRubineRed` 被用於兩條連續的水平線中。
* `\colorlet{Mycolor1}{green!10!orange}`：建立一個名為 `Mycolor1` 的顏色，使用 10% 綠色與 90% 橘色建立。
* `\definecolor{Mycolor2}{HTML}{00F9DE}`：顏色 `Mycolor2` 是使用 `HTML` 模型建立。此模型中的顏色必須使用 6 位十六進位數字建立，字元 A、B、C、D、E 和 F 必須使用大寫。

僅 `xcolor` 支援的顏色模型有：

* `cmy`：青、洋紅、黃
* `hsb`：色相、飽和度、亮度
* `HTML`：RRGGBB
* `Gray`：灰階，介於 1 到 15 之間的數字。
* `wave`：波長，介於 363 到 814 之間的數字。此數字代表光的波長，單位為奈米（nm）

## 設定頁面背景顏色

整個頁面的背景顏色可以很容易地透過 `\pagecolor`來變更。以下程式碼以先前範例的文字示範此功能：

```latex
\documentclass{article}
\usepackage[dvipsnames]{xcolor}
\colorlet{LightRubineRed}{RubineRed!70}
\colorlet{Mycolor1}{green!10!orange}
\definecolor{Mycolor2}{HTML}{00F9DE}
\begin{document}
\pagecolor{black}
\color{white}% 將預設顏色設為白色
本文提供多個範例，說明如何使用 \texttt{xcolor} 套件
來變更 \LaTeX{} 頁面元素的顏色。

\begin{itemize}
\item \textcolor{Mycolor1}{第一項}
\item \textcolor{Mycolor2}{第二項}
\end{itemize}

\noindent
{\color{LightRubineRed} \rule{\linewidth}{1mm}}

\noindent
{\color{RubineRed} \rule{\linewidth}{1mm}}
\end{document}
```

[在 Overleaf 中開啟此範例](https://www.overleaf.com/docs?engine=pdflatex\&snip_name=Custom+colors+with+xcolor\&snip=%5Cdocumentclass%7Barticle%7D%0A%5Cusepackage%5Bdvipsnames%5D%7Bxcolor%7D%0A%5Ccolorlet%7BLightRubineRed%7D%7BRubineRed%2170%7D%0A%5Ccolorlet%7BMycolor1%7D%7Bgreen%2110%21orange%7D%0A%5Cdefinecolor%7BMycolor2%7D%7BHTML%7D%7B00F9DE%7D%0A%5Cbegin%7Bdocument%7D%0A%5Cpagecolor%7Bblack%7D%0A%5Ccolor%7Bwhite%7D%25+set+the+default+colour+to+white%0AThis+document+presents+several+examples+showing+how+to+use+the+%5Ctexttt%7Bxcolor%7D+package+%0Ato+change+the+color+of+%5CLaTeX%7B%7D+page+elements.%0A%0A%5Cbegin%7Bitemize%7D%0A%5Citem+%5Ctextcolor%7BMycolor1%7D%7BFirst+item%7D%0A%5Citem+%5Ctextcolor%7BMycolor2%7D%7BSecond+item%7D%0A%5Cend%7Bitemize%7D%0A%0A%5Cnoindent%0A%7B%5Ccolor%7BLightRubineRed%7D+%5Crule%7B%5Clinewidth%7D%7B1mm%7D%7D%0A%0A%5Cnoindent%0A%7B%5Ccolor%7BRubineRed%7D+%5Crule%7B%5Clinewidth%7D%7B1mm%7D%7D%0A%5Cend%7Bdocument%7D)

此範例會產生以下輸出：

![在 LaTeX 中設定頁面背景顏色](/files/594f9b71cf20b88c812e0d66a1eeaa662337c2d8)

指令 `\pagecolor{black}` 將頁面顏色設為 `black`。這是一個切換指令，表示它會對整份文件生效，除非使用另一個切換指令將其還原。 `\nopagecolor` 會將背景恢復為正常狀態。

## LuaLaTeX 的其他顏色套件

除了標準的 `顏色` 以及 `xcolor` 套件之外，LuaLaTeX 也支援 [`luacolor`](https://ctan.org/pkg/luacolor?lang=en) 以及 [`lua-ul`](https://ctan.org/pkg/lua-ul?lang=en) 套件——這兩者都是專為 LuaLaTeX 設計，且與 pdfLaTeX 或 XeLaTeX 不相容。

### luacolor 套件

該 `luacolor` 套件重新定義了標準 `顏色` 套件指令的某些內部機制，並使用 LuaTeX 型 TeX 引擎獨有的技術。

雖然 `luacolor` 會自動納入 `顏色` 套件；如果你想執行下列任一操作：

* 使用 `顏色` 套件的特定選項，例如 `\usepackage[usenames,dvipsnames]{color}`，或
* 使用 `xcolor` 套件

你需要先載入 `顏色` 或 `xcolor` 套件，再載入 `luacolor`。例如，你可以載入 `顏色` 套件，使用：

```latex
% 範例 color 套件選項，請參閱文件
% 在 color 套件之後載入
```

或載入 `xcolor` 套件，使用：

```latex
% 範例 xcolor 套件選項，請參閱文件
% 在 xcolor 套件之後載入
```

請查閱 [`顏色`](http://mirrors.ctan.org/macros/latex/required/graphics/grfguide.pdf) 以及 [`xcolor`](http://mirrors.ctan.org/macros/latex/contrib/xcolor/xcolor.pdf) 的文件，以了解套件選項的詳細資訊。

透過運用 LuaLaTeX 的功能， `luacolor` 可實現更進階的顏色應用；例如，為複雜文字系統中的單個字形著色，或將顏色套用到附加符號。 `luacolor` 在單一字元套用顏色時，也能避免字距調整問題——請參閱 tex.stackexchange 上的問題 [這裡](https://tex.stackexchange.com/questions/622544/kerning-when-coloring-single-letters) 以及 [這裡](https://tex.stackexchange.com/questions/567220/kerning-with-xcolor) 以查看相關範例。

### lua-ul 套件

提到此套件是因為它具有顏色反白功能。它運用 LuaTeX 的進階能力，以不影響字距調整的方法提供底線、刪除線與反白功能；底線文字可使用任意指令，斷字可正常運作，且連字會被保留。

### 範例：luacolor

在這裡，我們將示範使用 `luacolor` 來為以印地語和阿拉伯語排版的文字，以及拉丁字母系統中使用的附加符號著色（基於 [這個範例](https://tex.stackexchange.com/questions/698933/color-breaks-diacritics-stacking)）。以下範例使用 [babel 套件](/latex/zh-tw/yu-yan/02-multilingual-typesetting-on-overleaf-using-babel-and-fontspec.md) 來設定 LuaLaTeX，使用 Overleaf 上的字型排版印地語和阿拉伯語。

```latex
\documentclass{article}

% 為了示範，偏好較小的頁面寬度
\usepackage[paperwidth=15cm]{geometry}

% 使用 babel 並設定阿拉伯語、印地語與英語
% 英語最後載入，因此成為預設語言
\usepackage[hindi,english]{babel}
\babelprovide[import=ar]{arabic}
% 為阿拉伯語設定羅馬字型
\babelfont[arabic]{rm}{Scheherazade}

% 為英語設定羅馬與無襯線字型
\babelfont{rm}{Noto Serif}
\babelfont{sf}{Noto Sans}

% 為印地語設定羅馬與無襯線字型
\babelfont[hindi]{rm}[Language=Default]{Noto Serif Devanagari}
\babelfont[hindi]{sf}[Language=Default]{Noto Sans Devanagari}

% 因為我們想使用 "dvipsnames" 選項來
% 存取其他命名顏色，我們必須先載入 xcolor
% 並在 luacolor 之前載入（請參閱 luacolor 套件文件）
\usepackage[dvipsnames]{xcolor}
\usepackage{luacolor}

% 建立一個方便的指令來排版印地語
\newcommand\hinditext[1]{\foreignlanguage{hindi}{#1}}

% 建立一個方便的指令來排版阿拉伯語
\newcommand\arabictext[1]{\foreignlanguage{arabic}{#1}}

\usepackage{hyperref}
\hypersetup{
colorlinks=true,
urlcolor=cyan
}
\begin{document}
% Noto 字型可受益於較大的行距
\setlength{\baselineskip}{14bp}

\section{印地文文字著色}
Google 將印地語單字 \textsf{\hinditext{किंकर्तव्यविमूढ़}} 翻譯為
「困惑不已」。透過使用 \texttt{luacolor} 套件，可以在印地文文字中為字形著色；例如 \hinditext{किंक\textcolor{purple}{र्तव्यव}\textcolor{green}{िमूढ़}}。你也可以為整個單字加上顏色： \hinditext{\textcolor{blue}{किंकर्तव्यविमूढ़}}。

\section{阿拉伯文文字著色}
% 建立一個自訂環境來
% 排版帶顏色的阿拉伯文文字
\newenvironment{colorarabic}
{% 使用更大的字型排版阿拉伯文
\fontsize{30}{30}
% 設定從右到左的段落與文字方向
\pardir TRT\textdir TRT}
{}

以下是一些著色過的阿拉伯文：  \begin{colorarabic}
\textcolor{red}{\arabictext{هَذَا}} \arabictext{نَصٌّ عَرَب}\textcolor{green}{\arabictext{ِ}}\arabictext{ي}\textcolor{blue}{\arabictext{ٌّ}}
\end{colorarabic}
\section{給附加符號著色}
此範例以 \href{https://tex.stackexchange.com/questions/698933/color-breaks-diacritics-stacking}{tex.stackexchange 上的程式碼} 為基礎。

\vspace{12pt}
\bgroup
\newcommand{\emptydiacritic}{\char"034F}
\fontsize{60}{60}\selectfont
á̀̐{\color{blue}a\emptydiacritic\color{green}́\color{red}̀\color{magenta}̐
\egroup
\end{document}
```

[在 Overleaf 中開啟這個 luacolor 範例。](/latex/zh-tw/ge-shi-hua/13-using-colors-in-latex.md)

此範例會產生以下輸出：

![使用 luacolor 套件的範例輸出](/files/7d8fc683647784f7281aa2bd124ad132398c66ec)

### 範例：lua-ul

此範例展示了以下 `lua-ul` 套件指令：

* `\highLight[*顏色*]{*要醒目提示的文字*}` 它會套用（可選的） `*顏色*` 到 `*要醒目提示的文字*`。請注意拼寫中的大寫 **`L`** 在拼寫中 `\high**L**ight` 指令！
* `\LuaULSetHighLightColor{*預設顏色*}`: 這會設定 `*預設顏色*` 供 `\highLight` 指令在未指定可選的 `[*顏色*]` 時使用。

注意： `luacolor` 在使用 `\highLight` 指令時，也必須載入 `lua-ul` 套件。

```latex
\documentclass{article}
% 為了示範，偏好較小的頁面寬度
\usepackage[paperwidth=12cm]{geometry}

\usepackage[dvipsnames]{xcolor} % 要存取與 \highLight 搭配使用的某些命名顏色
\usepackage{luacolor} % 使用 lua-ul 的 \highLight 指令所需
\usepackage{lua-ul}

\usepackage{blindtext}
\begin{document}
% 使用 Apricot 顏色來醒目提示文字
\highLight[Apricot]{\blindtext}

% 使用 \LuaULSetHighLightColor 來設定
% \highLight 指令的預設顏色
\begin{itemize}
    \item \LuaULSetHighLightColor{CornflowerBlue} \highLight{\blindtext[1]}。
    \item \LuaULSetHighLightColor{Goldenrod}\highLight{{\(y=f(x)\)}}
\end{itemize}
\end{document}
```

[在此開啟 `lua-ul` Overleaf 中的範例。](https://www.overleaf.com/docs?engine=lualatex\&snip_name=lua-ul+package+example\&snip=%5Cdocumentclass%7Barticle%7D%0A%25+Prefer+a+small+page+width+for+the+demo%0A%5Cusepackage%5Bpaperwidth%3D12cm%5D%7Bgeometry%7D%0A++%0A%5Cusepackage%5Bdvipsnames%5D%7Bxcolor%7D+%25+To+access+some+named+colors+used+with+%5ChighLight%0A%5Cusepackage%7Bluacolor%7D+%25+Required+to+use+the+lua-ul+%5ChighLight+command+%0A%5Cusepackage%7Blua-ul%7D+%0A++%0A%5Cusepackage%7Bblindtext%7D%0A%5Cbegin%7Bdocument%7D%0A%25+Use+the+Apricot+color+to+highlight+the+text++%0A%5ChighLight%5BApricot%5D%7B%5Cblindtext%7D+%0A%0A%25+Use+%5CLuaULSetHighLightColor+to+set+default+colors+for+%0A%25+the+%5ChighLight+command%0A%5Cbegin%7Bitemize%7D%0A++++%5Citem+%5CLuaULSetHighLightColor%7BCornflowerBlue%7D+%5ChighLight%7B%5Cblindtext%5B1%5D%7D.%0A++++%5Citem+%5CLuaULSetHighLightColor%7BGoldenrod%7D%5ChighLight%7B%7B%5C%28y%3Df%28x%29%5C%29%7D%7D%0A%5Cend%7Bitemize%7D%0A%5Cend%7Bdocument%7D)

此範例會產生以下輸出：

![使用 lua-ul 套件醒目標示文字](/files/61c44d1fd231ece3dfa1a7397a1ed9d2e9fd6248)

## 延伸閱讀

更多資訊請參見：

* [該 **顏色** 套件文件所述](http://mirrors.ctan.org/macros/latex/required/graphics/grfguide.pdf) （或 [可透過 `texdoc.org`](https://texdoc.org/serve/color/5))
* [該 **xcolor** 套件文件所述](http://mirrors.ctan.org/macros/latex/contrib/xcolor/xcolor.pdf) （或 [可透過 `texdoc.org`](https://texdoc.org/serve/xcolor/0))
* [LaTeX 中的長度](/latex/zh-tw/ge-shi-hua/01-lengths-in-latex.md)
* [字型大小、字族與樣式](/latex/zh-tw/zi-xing/01-font-sizes-families-and-styles.md)
* [字型字體](/latex/zh-tw/zi-xing/02-font-typefaces.md)
* [使用 XeLaTeX 支援現代字型](/latex/zh-tw/zi-xing/03-xelatex.md)
* [表格](/latex/zh-tw/tu-biao-yu-biao-ge/01-tables.md)
* [插入圖片](/latex/zh-tw/geng-duo-zhu-ti/27-inserting-images.md)
* [Beamer](/latex/zh-tw/jian-bao/01-beamer.md)
* [Powerdot](/latex/zh-tw/jian-bao/02-powerdot.md)
* [海報](/latex/zh-tw/jian-bao/03-posters.md)


---

# 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/ge-shi-hua/13-using-colors-in-latex.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.
