TikZ 可以在标题块中使用吗?

TikZ 可以在标题块中使用吗?

我想要得到以下效果:

在此处输入图片描述

我写了下面的代码,但是编译不通过,不知道哪里出了问题,或者怎么才能得到图1的效果,该怎么办?

\documentclass{article}
\usepackage{graphicx}
\usepackage{tikz}
\begin{document}
\begin{figure}
\centering
\begin{tikzpicture}
\node [draw, circle, inner sep=0.2pt] {\textbf{1}};
\end{tikzpicture}
\caption{\tikz{ \node [draw, circle, inner sep=0.2pt] {\textbf{1}};} is a node.}
\label{pic}
\end{figure}
\end{document}

答案1

\protect如果脆弱命令用于移动参数,则需要使用脆弱命令,如\caption。参数移动到文件.aux,然后从那里移动到.lof文件以获取图表列表:

\caption{\protect\tikz{\protect\node [draw, circle, inner sep=0.2pt] {\textbf{1}};} is a node.}

下面的示例将节点文本的基线移动到上下文基线,定义一个用于文本中节点的强健宏\caption并定义一种样式。

\documentclass{article}
\usepackage{graphicx}
\usepackage{tikz}
\tikzstyle{bold circled} = [
  circle,
  draw,
  inner sep=0.2pt,
  node font=\bfseries,
]
\DeclareRobustCommand*\BoldCircled[1]{%
  \tikz[baseline=(X.base)]
  \node[bold circled] (X) {#1};%
}
\begin{document}
\listoffigures
\begin{figure}
  \centering
  \begin{tikzpicture}
    \node[bold circled] {1};
  \end{tikzpicture}
  \caption{\BoldCircled{1} is a node.}
  \label{pic}
\end{figure}
\end{document}

结果

相关内容