수학 모드 색칠하기

수학 모드 색칠하기

수학 모드에서 일부 기호에 색상을 지정하고 싶지만 아래 첨자에는 색상을 지정하고 싶지 않습니다. 그런데 이렇게 하면 아래 첨자가 깨져 텍스트에서 빠져 나옵니다.

내 문제를 설명하기 위해 최소한의 예를 준비했습니다.

\documentclass{article}
\usepackage{xcolor}
\begin{document}

$T_i$

${\color{red}T}_i$

$\textcolor[rgb]{1,0,0}{T}_{i}$

\end{document}

결과는 다음과 같습니다.

영상

T를 색칠할 때 T와 i는 분리됩니다. 아래 첨자에 공백을 추가하지 않고 색상을 올바르게 지정할 수 있는 방법이 있나요?

답변1

색상을 변경하거나 아래 첨자 바로 앞에서 그룹을 닫는 대신 아래 첨자를 입력한 후 색상을 변경하세요.

\documentclass{article}
\usepackage{xcolor}
\begin{document}
$T_i$

${\color{red}T_{\color{black}i}}$
\end{document}

여기에 이미지 설명을 입력하세요

답변2

현재 색상을 기억하고 xparse현재 색상으로 조판되는 가능한 아래 첨자와 위 첨자를 가져오는 데 사용할 수 있습니다.

\documentclass{article}
\usepackage{xcolor}
\usepackage{xparse}

\NewDocumentCommand{\colornucleus}{omme{_^}}{%
  \begingroup\colorlet{currcolor}{.}%
  \IfValueTF{#1}
   {\textcolor[#1]{#2}}
   {\textcolor{#2}}
    {%
     #3% the nucleus
     \IfValueT{#4}{_{\textcolor{currcolor}{#4}}}% subscript
     \IfValueT{#5}{^{\textcolor{currcolor}{#5}}}% superscript
    }%
  \endgroup
}
\begin{document}

$T_i$ $T^j$ $T_i^j$

$\colornucleus{red}{T}_i$
$\colornucleus{red}{T}^j$
$\colornucleus{red}{T}_i^j$

$\colornucleus[rgb]{1,0,0}{T}_{i}$
$\colornucleus[rgb]{0,1,0}{T}^j$
$\colornucleus[rgb]{0,0,1}{T}_{i}^j$

\textcolor{blue!30!red}{Text $\colornucleus{black}{T}_i$ text}

\end{document}

여기에 이미지 설명을 입력하세요

관련 정보