İki farklı renkte bir kelime nasıl yazılır?

Aug 17 2020

Bir kelimem var ve iki farklı renkte yazmak istiyorum. Genellikle iki \textcolobölüm arasında bir boşluk olacaktır

\textcolor{sectcol}{la}\textcolor{white}{tex}

Boşluğu negatif ile "kaldırabilirim" \hspace.

\textcolor{sectcol}{la}\hspace{-1mm}\textcolor{white}{tex}

Bunu yapmanın daha iyi bir yolu var mı?

Yanıtlar

3 UlrikeFischer Aug 17 2020 at 16:54

renk ekler whatitsve bu, karakter aralığını önleyecektir:

\documentclass{article}
\usepackage{color}

\begin{document}
VA

\textcolor{red}{V}\textcolor{blue}{A}
\end{document}

Bu konuda yapabileceğiniz pek bir şey yok (negatif boşluk eklemek dışında). Bundan gerçekten kaçınmanın tek yolu, lualatex motorunu ve luacolor paketini kullanmaktır:

\documentclass{article}
\usepackage{luacolor}

\begin{document}
VA

\textcolor{red}{V}\textcolor{blue}{A}
\end{document}

2 egreg Aug 17 2020 at 17:13

Örneğiniz iyi değil çünkü standart yazı tiplerinde "a" ve "t" arasında karakter aralığı yok.

pdflatexLuaTeX ile sıkışıp kalıyorsanız ve kullanamıyorsanız, gerekli karakter aralığını manuel olarak hesaplayabilirsiniz.

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

\ExplSyntaxOn

\NewDocumentCommand{\twocolors}{mmmm}
 {% #1 = color for the first part
  % #2 = first part
  % #3 = color for the second part
  % #4 = second part
  \egreg_twocolors:nnnn { #1 } { #2 } { #3 } { #4 }
 }

\box_new:N \l__egreg_twocolors_kern_box
\box_new:N \l__egreg_twocolors_nokern_box

\cs_new_protected:Nn \egreg_twocolors:nnnn
 {
  \hbox_set:Nn \l__egreg_twocolors_kern_box
   {
    \tl_item:nn { #2 } { -1 }
    \tl_item:nn { #4 } { 1 } % could just be \tl_head:n
   }
  \hbox_set:Nn \l__egreg_twocolors_nokern_box
   {
    \hbox:n { \tl_item:nn { #2 } { -1 } }
    \hbox:n { \tl_item:nn { #4 } { 1 } } % could just be \tl_head:n
   }
  \textcolor{#1}{#2}
  \skip_horizontal:n
   {
    \box_wd:N \l__egreg_twocolors_kern_box - \box_wd:N \l__egreg_twocolors_nokern_box
   }
  \textcolor{#3}{#4}
 }

\ExplSyntaxOff

\begin{document}

\twocolors{green!50!blue}{two}{red!30}{color}

twocolor

\makebox[0pt][l]{twocolor}\twocolors{green!50!blue}{two}{red!30}{color}
\makebox[0pt][l]{\twocolors{green!50!blue}{two}{red!30}{color}}twocolor

\twocolors{green!50!blue}{la}{red!30}{tex}

latex

\makebox[0pt][l]{latex}\twocolors{green!50!blue}{la}{red!30}{tex}
\makebox[0pt][l]{\twocolors{green!50!blue}{la}{red!30}{tex}}latex

\twocolors{green!50!blue}{V}{red!30}{A}

VA

\makebox[0pt][l]{VA}\twocolors{green!50!blue}{V}{red!30}{A}
\makebox[0pt][l]{\twocolors{green!50!blue}{V}{red!30}{A}}VA

\end{document}

Her örnekte, renklerin sızdırmadığına dair kontrol vardır. Bununla birlikte, küçük çözünürlüklerde, tarama aracı yapay nesneler gösterebilir. Aşağıdaki görüntü oldukça yüksek çözünürlükte çekilmiştir.

Sınırlama: İlk bölümdeki son öğe veya ikinci bölümdeki ilk öğe aksanlı bir harf ise, onu (veya onları) destekleyin.