我的问题,在变体中,我在这里看到过,问过很多次,但我无法解决问题。
如果我们使用\textcolor{FirstLetter}SecondAndOtherLettersOfWord
,我们会丢失第一个和第二个字母之间的字体字距。在日志中我们有和说明。在这种情况
下(通常的文本,并且通常只为单词中的第一个字母着色), 我们需要如何组合、等(来自之前的答案)?\showoutput
\special{color push rgb 1 0 0}
\special{color pop}
\bgroup
\egroup
韓萊特. 不能使用luacolor和LuaLatex。
梅威瑟:
\documentclass{article}
\usepackage{polyglossia}
\usepackage{xcolor}
\begin{document}
\textcolor{red}{V}AR
VAR
\end{document}
答案1
测量单词部分之间的字距。我还添加了对着色之前某些内容的支持。
\documentclass{article}
\usepackage{xcolor}
\newcommand{\kerncolor}[4]{%
% #1 = color, #2 = before, #3 = colored part, #4 = after
\sbox0{#2#3}\sbox2{\mbox{#2}\mbox{#3}}%
\dimen0=\dimexpr\wd0-\wd2\relax
\sbox0{#3#4}\sbox2{\mbox{#3}\mbox{#4}}%
\dimen2=\dimexpr\wd0-\wd2\relax
#2\kern\dimen0 \textcolor{#1}{#3}\kern\dimen2 #4%
}
\begin{document}
\kerncolor{red}{}{V}{AR}
VAR
\sbox0{\kerncolor{red}{}{V}{AR}}\the\wd0
\sbox0{VAR}\the\wd0
\itshape
\kerncolor{red}{}{V}{AR}
VAR
\sbox0{\kerncolor{red}{}{V}{AR}}\the\wd0
\sbox0{VAR}\the\wd0
\end{document}