答案1
使用 tikz:
下面的简单宏排版了一个带有一些文本的彩色框:
\newcommand{\mycolorbox}[2][gray]{%
\tikz[baseline=(n.base)] \node[rounded corners,%
white,% Font color
node font=\sffamily,% Sans serif font
fill=#1,% Fill box with optional argument color
inner xsep=5pt% Horizontal padding
](n){\mathstrut#2};%
}
以下是一个使用示例:
\documentclass[varwidth=5cm]{standalone}
\usepackage[T1]{fontenc}
\usepackage{tikz}
\newcommand{\mycolorbox}[2][gray]{\tikz[baseline=(n.base)] \node[rounded corners,white,node font=\sffamily,fill=#1,inner xsep=5pt](n){\mathstrut#2};}
\begin{document}
\mycolorbox[magenta]{while} \mycolorbox[cyan]{(condition)} \mycolorbox{\textbraceleft}\\
\hspace*{15pt}\mycolorbox[orange]{Code}\\
\mycolorbox{\textbraceright}
\end{document}