枚举文本圈中的标签

枚举文本圈中的标签

我正在尝试使用由文本圈包围的列表标签来获取枚举,为此我使用了以下代码:

\usepackage{tikz}
\newcommand*\mycirc[1]{%
\begin{tikzpicture}[baseline=(C.base)]
\node[draw,circle,inner sep=1pt](C) {#1};
\end{tikzpicture}}

我正在尝试使以下代码工作:

    \begin{compactenum}[{\mycirc{}A{}}]
    \item
    \end{compactenum}

但还没有运气。请注意,这compactenum是来自paralist包的。欢迎提出任何建议。

答案1

我建议你使用该enumitem包来制作紧凑列表。以下是示例:

\documentclass[12pt]{article}
\usepackage{tikz}
\usepackage{enumitem}
\newcommand*\mycirc[1]{%
\begin{tikzpicture}[baseline=(C.base)]
\node[draw,circle,inner sep=1pt,minimum size=3ex](C) {#1};
\end{tikzpicture}}

\begin{document}
\begin{enumerate}[itemsep=0pt,label=\protect\mycirc{\Alph*}]
  \item Foo
  \item Bar
  \item
  \item
  \item
\end{enumerate}
\end{document}

代码输出

答案2

如果您仍然想使用paralist,则需要使用一些技巧,因为不幸的是paralist它似乎没有提供构建自定义标签的方法:

\def\mycirc\csname#1\endcsname{%
\begin{tikzpicture}[baseline=(C.base)]
\node[draw,circle,inner sep=1pt](C) {\csname#1\endcsname};
\end{tikzpicture}}

进而

\begin{compactenum}[\mycirc A]

相关内容