8

I was looking to apply a color gradient to some text (i.e. Chapter / section headings) and I searched through the Internet but was unable to find a minimum working example. Is it something that can be done in XeLaTeX?

I decided to ask here, thinking someone in the community might have already done similar to that.

2

1 Answer 1

11

The following example comes from the TikZ 2.10 manual, p237, and seems to do what you describe:

\begin{tikzfadingfrompicture}[name=tikz]
  \node [text=transparent!20]
    {\fontfamily{ptm}\fontsize{45}{45}\bfseries\selectfont Ti\emph{k}Z};
\end{tikzfadingfrompicture}
% Now we use the fading in another picture:
\begin{tikzpicture}
  \fill [black!20] (-2,-1) rectangle (2,1);
  \pattern [pattern=checkerboard,pattern color=black!30] (-2,-1) rectangle (2,1);
  \shade[path fading=tikz,fit fading=false, left color=blue,right color=black]
    (-2,-1) rectangle (2,1);
\end{tikzpicture}

Adapting this somewhat, you can achieve the following:

\documentclass{article}
\usepackage{tikz}
\usetikzlibrary{fadings,patterns}
\begin{document}
\newsavebox{\tempbox}
\newcommand\tikzsection[1]{%
  \begin{tikzfadingfrompicture}[name=tikzsection]
    \node [text=white] {\normalfont \Large \bfseries #1};
  \end{tikzfadingfrompicture}
  \begin{lrbox}{\tempbox}%
    \begin{tikzpicture}
      \node [text=white,inner sep=0pt,outer sep=0pt] (textnode) {\normalfont \Large \bfseries #1};
      \shade[path fading=tikzsection,fit fading=false,left color=blue,right color=black]
      (textnode.south west) rectangle (textnode.north east);
    \end{tikzpicture}%
  \end{lrbox}
  % Now we use the fading in another picture:
  \section{XX \usebox\tempbox{} XX}%
}
\tikzsection{First section}
Some text
\tikzsection{Second section}
Some text
\end{document}

which produces

screenshot of faded text

4
  • 2
    It is preferable if you provide a complete compilable example including the \documentclass{article}, and all the packages. And, show how to apply this to a chapter/section heading. Feb 27, 2012 at 22:49
  • @PeterGrill, fair point, I've now done so :)
    – Ben Lerner
    Feb 27, 2012 at 23:24
  • Great. Just one more thing: you should probably remove the debugging code \show\section. Feb 27, 2012 at 23:55
  • @BenLerner Your suggestion is good but works only in PDFLaTeX, XeLaTeX, etc. not through dvips, please advise...
    – MadyYuvi
    Mar 17, 2021 at 8:46

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.