![](/static/images/ext/zip.gif)带圈数字.zip

2 回答2

2
用文本的上下标模式试试,不要用公式的数学模式。 ``` tex \documentclass{ctexart} \setmainfont{Times New Roman} \setsansfont{Arial} \usepackage{tikz} \usepackage{xparse} \NewDocumentCommand{\qqr}{ s O{black} m } {\begin{tikzpicture}[x=2.4ex,y=2.4ex,line width=0.1ex] \IfBooleanTF {#1} {\draw(0,0) circle (0.32) node [inner sep=0pt] {\resizebox{1.1ex}{1.1ex}{\rmfamily#3}};} {\filldraw[#2](0,0) circle (0.32) node [white,inner sep=0pt] {\resizebox{1.1ex}{1.1ex}{\rmfamily #3}};} \end{tikzpicture}} \NewDocumentCommand{\qqs}{ s O{black} m } {\begin{tikzpicture}[x=2.4ex,y=2.4ex,line width=0.1ex] \IfBooleanTF {#1} {\draw(0,0) circle (0.32) node [inner sep=0pt] {\resizebox{1.1ex}{1.1ex}{\sffamily #3}};} {\filldraw[#2](0,0) circle (0.32) node [white,inner sep=0pt] {\resizebox{1.1ex}{1.1ex}{\sffamily #3}};} \end{tikzpicture}} \begin{document} 文字\qqr*{3}文字\textsuperscript{\qqr{3}} 文字\qqs*{3}文字\textsuperscript{\qqs{3}} \end{document} ```
0
```tex \makeatletter \newcounter{superscriptusetikzcount} \NewDocumentCommand{\superscriptusetikz}{ s O{fill=black!80,text=white} O{\thesuperscriptusetikzcount} }% {% \begingroup% \pgfmathsetmacro{\superscriptsize}{add(multiply(\f@size,0.5),ln(\f@size))}% \begin{tikzpicture}[baseline=-0.8em]% \IfBooleanTF {#1} {\node [circle,draw,inner sep=0.4pt,] {\fontsize{\superscriptsize pt}{1em}\selectfont #3};} {\node [circle,inner sep=0.4pt,#2] {\fontsize{\superscriptsize pt}{1em}\selectfont #3};} \end{tikzpicture}% \stepcounter{superscriptusetikzcount}% \endgroup% }% 上标\superscriptusetikz* {\zihao{3}上标\superscriptusetikz} {\zihao{1}上标\superscriptusetikz[fill=green!60!black,text=red!80!black]} \makeatother ``` ![](https://pics.latexstudio.net/data/images/202003/7cfc69f6b834a7d.png) 这是从橘子老师的回答中改编的,其中的命令 `\f@size` 是从胡伟老师的《文类和宏包学习手册》里面看到的。

你的回答

请登录后回答

你的回答将会帮助更多人,请务必认真回答问题。