我想在 TikZ 中创建一个矩形,其中包含代码。但是,代码的某些部分应该用蓝色等颜色标记。我目前最好的解决方案是:
\documentclass{article}
\usepackage{xcolor} % for colour
\usepackage{tikz}
\usetikzlibrary{shapes.geometric, arrows}
\usepackage{minted}
\usepackage{listings}
% Define the color scheme for the code listing
\lstdefinelanguage{Scheme}{
basicstyle=\ttfamily\small,
breaklines=true,
showstringspaces=false,
}
\tikzstyle{rec} = [rectangle, rounded corners, text centered, draw=black]
\begin{document}
\begin{figure}
\begin{tikzpicture}[node distance=2cm]
\node (input) [rec] {
\begin{lstlisting}[language=Scheme, escapechar=£]
(+ £\color{blue}{(+ 3 2)}£
10)
\end{lstlisting}
};
\end{tikzpicture}
\end{figure}
\end{document}
然而,结果是文本超出了打印矩形的边界:
我该如何解决这个问题,使得(1)矩形完全包含蓝色文本,并且(2)蓝色文本可以是任意大小?