Absätze in LaTeX-Dokumenten sequenziell einfärben

Absätze in LaTeX-Dokumenten sequenziell einfärben

Diese Frage ähneltAbsätze in LaTeX-Dokumenten nach dem Zufallsprinzip einfärben, aber ich möchte die Absätze mit einer eindeutigen Farbe (Farbliste) einfärben. Gibt es eine Möglichkeit, dies zu tun? (Ich möchte die Antwort auf die ursprüngliche Frage kommentieren, habe aber nicht genügend Reputation.

Antwort1

Es gibt sicher noch Raum für Verbesserungen (z.B. könnte man die Farbliste als eine Komma-getrennte Liste definieren), aber Sie können den folgenden Code verwenden, der schamlos aufegregs Antwortzu der Frage, die Sie verlinkt haben.

\documentclass{article}
\usepackage{everyhook,xcolor,lipsum}

\newcounter{cyclecolor}
\newcommand*{\cyclecolor}{%
  \stepcounter{cyclecolor}%
  \ifcase\value{cyclecolor}%
  \or\color{red}%
  \or\color{orange}%
  \or\color{teal}%
  % add further colors here
  \or\color{blue}%
     \setcounter{cyclecolor}{0}% the last one in the list must reset the counter
  \fi}

\PushPostHook{par}{\cyclecolor} % https://tex.stackexchange.com/a/157158/82917

\begin{document}

\section{First}

\lipsum[66]

\lipsum[75]

\lipsum[66]

\lipsum[75]

\lipsum[66]

\lipsum[75]

\end{document}

Bildbeschreibung hier eingeben

Alternativ können Sie zwei Benutzermakros definieren \cyclecolor, \nocyclecolordie das Verhalten mitten im Dokument ändern

\documentclass{article}
\usepackage{everyhook,xcolor,lipsum}

\newcounter{cyclecolor}

\makeatletter
\def\@cyclecolor{\relax}
\newcommand*{\cyclecolor}{\def\@cyclecolor{\@@cyclecolor}}
\newcommand*{\nocyclecolor}{\color{black}\def\@cyclecolor{\relax}}

\newcommand*{\@@cyclecolor}{%
  \stepcounter{cyclecolor}%
  \ifcase\value{cyclecolor}%
  \or\color{red}%
  \or\color{orange}%
  \or\color{teal}%
  % add further colors here
  \or\color{blue}%
     \setcounter{cyclecolor}{0}%
  \fi}

\PushPostHook{par}{\@cyclecolor}
\makeatother


\begin{document}
% start with normal black
\lipsum[66]

\cyclecolor % cycles through colors
\lipsum[75]

\lipsum[66]

\lipsum[75]

\lipsum[66]

\lipsum[75]

\lipsum[75]

\nocyclecolor % restores normal black
\lipsum[66]

\lipsum[75]

\end{document}

Bildbeschreibung hier eingeben

Antwort2

Noch nicht vollständig getestet, aber ...

mwe

\documentclass{article}
\usepackage{lipsum}
\usepackage{xcolor}
\definecolorseries{parrafo}{rgb}{last}{blue}{red}
\resetcolorseries[3]{parrafo}
\let\oldpar\par
\def\par{\oldpar\color{parrafo!!+}}
\begin{document}
\section{Test}
\lipsum[1][1-5]\par
\lipsum[2][1-5]\par
\lipsum[3][1-5]\par
\lipsum[4][1-5]\par
\lipsum[3][1-5]\par
\lipsum[4][1-5]\par
\section{More test}
\lipsum[1][1-5]\par
\lipsum[2][1-5]\par
\lipsum[3][1-5]\par
\lipsum[4][1-5]\par
\lipsum[3][1-5]\par
\lipsum[4][1-5]\par
\end{document}

verwandte Informationen