Markieren Sie Linien im Side-by-Side-Algorithmus

Aug 26 2020

Ich habe eine 2-Spalten-Latex-Vorlage (IEEEtran), in die ich 2 Algorithmen nebeneinander stelle:

\documentclass[10pt,conference]{article}
\usepackage{algorithm}
\usepackage{algorithmic}
\usepackage{xcolor}
\def\HiLi{\leavevmode\rlap{\hbox to \hsize{\color{yellow!50}\leaders\hrule height .8\baselineskip depth .5ex\hfill}}}
\begin{document}


\begin{figure*}[htbp]
\centering
 \begin{minipage}[t]{0.49\textwidth}
    
  \begin{algorithm}[H]
        \caption{Foo}
        \begin{algorithmic}[1]
            \REQUIRE $Beer$
            \HiLi \STATE $s \leftarrow HighlightThis$
            \STATE $f \leftarrow Foo()$

        \end{algorithmic}
    \end{algorithm}
 \end{minipage}
 \begin{minipage}[t]{0.49\textwidth}
    
    \begin{algorithm}[H]
        \caption{Bar}
        \begin{algorithmic}[1]
            \REQUIRE $Wine$\\
            \STATE $s \leftarrow Bar()$
            \STATE $b \leftarrow Bar1()$
        \end{algorithmic}
    \end{algorithm}
    \vfill
 \end{minipage}
\end{figure*}

\end{document}

Mein Ziel ist es, die Zeile "HighlightThis" hervorzuheben. Ich habe diese 2 ausprobiert: Approach1 , TikZ Approach .

Das Problem ist, dass bei beiden Ansätzen das Highlight völlig verlegt wird: Ergebnis von Ansatz 1:

Wie kann das gemacht werden? Danke für Ihre Hilfe

Antworten

2 vitalstatistix Aug 26 2020 at 21:30

Wollen Sie das?

Ich habe den Befehl \ HiLi geändert, um \ linewidth anstelle von \ hsize zu verwenden, und die Platzierung des Befehls \ HiLi im Algorithmus verschoben. Siehe unten:

\documentclass[10pt,conference]{article}
\usepackage{algorithm}
\usepackage{algorithmic}
\usepackage{xcolor}
\def\HiLi{\leavevmode\rlap{\hbox to \linewidth{\color{yellow!50}\leaders\hrule height .8\baselineskip depth .5ex\hfill}}}
\begin{document}


\begin{figure*}[htbp]
\centering
 \begin{minipage}[t]{0.49\textwidth}
    
  \begin{algorithm}[H]
        \caption{Foo}
        \begin{algorithmic}[1]
            \REQUIRE $Beer$
            \STATE \HiLi $s \leftarrow HighlightThis$
            \STATE $f \leftarrow Foo()$
        \end{algorithmic}
    \end{algorithm}
 \end{minipage}
 \begin{minipage}[t]{0.49\textwidth}
    
    \begin{algorithm}[H]
        \caption{Bar}
        \begin{algorithmic}[1]
            \REQUIRE $Wine$\\
            \STATE $s \leftarrow Bar()$
            \STATE $b \leftarrow Bar1()$
        \end{algorithmic}
    \end{algorithm}
    \vfill
 \end{minipage}
\end{figure*}

\end{document}