Platzieren Sie den Pseudocode im Tikz-Knoten

Platzieren Sie den Pseudocode im Tikz-Knoten

Wie kann ich Pseudocode, der vom algpseudocodePaket geschrieben wird, in einen tikzKnoten einfügen? (Ich möchte den Code nicht nur dekorieren, sondern in einem Diagramm verwenden)

MWE

\documentclass{article}

\usepackage{tikz}

\usepackage{algpseudocode}

\begin{document}
    \begin{tikzpicture}
        \node[draw, rounded corners] {%    
            \begin{algorithmic}
            \If{$\mathrm{n}=\mathrm{np}$}
                \State Have fun
            \EndIf
            \end{algorithmic}%
            };
    \end{tikzpicture}
\end{document}

Ergebnis

Viele Fehler wie:

Irgendetwas stimmt nicht – möglicherweise fehlt ein \item.

Ergebnis

Antwort1

Die algorithmicUmgebung lässt sich nicht in Kästchen einfügen, aber Sie können sie in ein einfügen minipage. Da der Text der natürlichen Breite des Pseudocodefragments entsprechen soll, habe ich das varwidthPaket verwendet, anstatt minipagedirekt ein zu verwenden.

\documentclass{article}

\usepackage{tikz}
\usepackage{varwidth}

\usepackage{algpseudocode}

\begin{document}

    \begin{tikzpicture}
        \node[draw, rounded corners] {% 
            \begin{varwidth}{\linewidth}
            \begin{algorithmic}
            \If{$\mathrm{n}=\mathrm{np}$}
                \State Have fun
            \EndIf
        \end{algorithmic}%
        \end{varwidth}
%
            };
    \end{tikzpicture}
\end{document}

Ausgabe des Codes

verwandte Informationen