使用 pdfLaTeX 时,我通常使用以下代码全局设置文档中所有文本的文本颜色:
\documentclass{scrreprt}
\usepackage{xcolor}
\begin{document}
\color{red}
\section{A section heading}
some test text
\end{document}
通过 pdfLaTeX 运行文档会产生红色文本。通过 XeLaTeX 运行会产生黑色文本。使用包color
而不是xcolor
没有区别。
我想全局设置文档中出现的所有文本的文本颜色,即标题、目录、所有普通文本、图形、方程式,如果可能的话,在 TikZ 节点中,所有内容。
答案1
这里有一种方法可以实现这一点,无论你是否使用 XeLaTeX,无论你是否使用 Komascript,它都可以工作。它通过重新定义 LaTeX 使用的默认颜色来工作。
\documentclass{report}
%\documentclass{scrreprt}
\usepackage{xcolor}
\makeatletter
\newcommand{\globalcolor}[1]{%
\color{#1}\global\let\default@color\current@color
}
\makeatother
\AtBeginDocument{\globalcolor{red}}
\begin{document}
\section{A section heading}
some test text
\end{document}
答案2
既然您说您正在使用 XeLaTeX,那么您也可以在字体定义中定义颜色:
如果您这样做,为了更改颜色,您需要使用fontspec
's\addfontfeature
而不是常规的\color
或\textcolor
命令。或者,您可以为其他颜色定义一个新的字体系列。
\documentclass{scrreprt}
\usepackage{xcolor}
\usepackage{fontspec}
\setmainfont[Color=red]{Linux Libertine O}
\setsansfont[Color=red]{Linux Biolinum O}
\setmonofont[Color=red]{Inconsolata}
% If you will be changing colours a lot, it's best to define a new font family
% for each colour that you will use; if you're just changing a few times, then
% \addfontfeature is fine
\newfontfamily\blueroman[Color=blue]{Linux Libertine O}
\begin{document}
\chapter{A chapter}
\section{A section}
\texttt{Some mono text}
Some regular text.
{\addfontfeature{Color=blue} Some blue text without defining a new font family.}
{\blueroman Some blue text with a new font family command.}
\end{document}
答案3
\documentclass{scrreprt}
\usepackage{xcolor}
\AtBeginDocument{\color{red}}
\addtokomafont{sectioning}{\color{red}}
\begin{document}
\section{A section heading}
some test text
\end{document}
答案4
正如 Alan Munn 所建议的,由于您使用的是 XeLaTeX,因此您可以使用fontspec
的功能来设置字体的颜色。如果您希望所有文本都具有给定的颜色,您甚至可以在默认字体功能中进行设置:
\documentclass{scrreprt}
\usepackage{xcolor}
\usepackage{fontspec}
\defaultfontfeatures{Ligatures=TeX,Color=red}
\setmainfont{Linux Libertine O}
\setsansfont{Linux Biolinum O}
\setmonofont{Inconsolata}
\begin{document}
\chapter{A chapter}
\section{A section}
\texttt{Some mono text}
Some regular text.
\end{document}