我希望在我的乳膠文件中看到以下內容:一旦使用該\textit{...}
命令,我希望看到該文字不僅獲得斜體字體,而且還獲得藍色。我想將其應用於整個文檔。我不必為應該獲取此字體的文本的每個部分指定它,有沒有一種方法可以在文檔的開頭指定它,以便將其應用於整個文檔?基本上我想更改\textit{...}
命令的預設屬性。
答案1
使用 (Xe|Lua)LaTeX 這非常簡單:
\documentclass{article}
\usepackage{fontspec}
\usepackage{xcolor}
\setmainfont{Latin Modern Roman}[
ItalicFeatures={Color=blue},
]
\begin{document}
Some text \emph{emphasized} and \textit{in italic}.
\end{document}
情況pdflatex
有點複雜:
\documentclass{article}
\usepackage{xcolor}
\makeatletter
\DeclareRobustCommand{\itshape}{%
\not@math@alphabet\itshape\mathit
\fontshape\itdefault\selectfont
\color{blue}%
}
\makeatother
\begin{document}
Some text \emph{emphasized} and \textit{in italic}.
\end{document}
但要小心不要\itshape
在段落之間使用。
答案2
這是一個名為 的命令\coloremph
,它建立在 的基礎上,\emph
允許以某種顏色渲染強調的材質。預設顏色是blue
,但是可以透過在 的可選參數中提供不同的顏色來覆蓋它\coloremph
。
透過此設置,任何「內部」強調材料都將以直立字體形狀呈現,但具有周圍強調材料的顏色。取消註解該指令
%\renewcommand\eminnershape{\upshape\color{black}} % optional
如果你想讓內部強調的材質排版為黑色。
這是完整的 MWE(最小工作範例):
\documentclass{article}
\usepackage[dvipsnames,svgnames,x11names]{xcolor} % for lots of predefined color names
\newcommand\coloremph[2][blue]{\textcolor{#1}{\emph{#2}}}
%\renewcommand\eminnershape{\upshape\color{black}} % optional
\begin{document}
Hello, World.
\coloremph{Once upon a \emph{very strange} time, \dots}
\coloremph[Coral3]{Once upon a \emph{very strange} time, \dots}
\coloremph[MediumPurple]{Once upon a \emph{very strange} time, \dots}
Hello World.
\end{document}