1

I found algorithm environment produces undesired output in this situation.

\documentclass{article}

\usepackage{color}
\usepackage{algorithm}

\newcommand{\colormacro}[1]{{\color{red} [#1]}}

\begin{document}
    \colormacro{colored things long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long 
        long long long long long long}
    \begin{algorithm}[t]
        It is correct here.
        \caption{Title and lines are colored}
    \end{algorithm}
\end{document}

The result looks like below.

enter image description here

It does not appear if I replace algorithm with figure or table

1

Yes, the current text colour bleeds into the floating environment since float - the package that creates the algorithm environment within algorithm - doesn't reset the colour. This is done by default within the regular floats like figure and table.

The following patch corrects this behaviour using a similar method employed by figure and table:

enter image description here

\documentclass{article}

\usepackage{xcolor,lipsum}
\usepackage{algorithm}

\makeatletter
\let\old@float@makebox\float@makebox
\renewcommand{\float@makebox}[1]{%
  \color@vbox\normalcolor
    \old@float@makebox{#1}%
  \color@endbox}
\makeatother

\begin{document}

\color{red}%
\lipsum[1-7]

\begin{algorithm}[t]
  It is correct here.
  \caption{Title and lines are colored}
\end{algorithm}

\lipsum[7-11]

\end{document}
| improve this answer | |

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.