法I. by zepinglee
\documentclass[UTF8]{ctexart}
\XeTeXcharclass`①=1
\XeTeXcharclass`②=1
\XeTeXcharclass`③=1
\XeTeXcharclass`④=1
\XeTeXcharclass`⑤=1
\XeTeXcharclass`⑥=1
\XeTeXcharclass`⑦=1
\XeTeXcharclass`⑧=1
\XeTeXcharclass`⑨=1
\XeTeXcharclass`⑩=1
\XeTeXcharclass`⑪=1
\XeTeXcharclass`⑫=1
\XeTeXcharclass`⑬=1
\XeTeXcharclass`⑭=1
\XeTeXcharclass`⑮=1
\XeTeXcharclass`⑯=1
\XeTeXcharclass`⑰=1
\XeTeXcharclass`⑱=1
\XeTeXcharclass`⑲=1
\XeTeXcharclass`⑳=1
\newcommand\circlednum[1]{%
\ifnum#1<21%
\symbol{\numexpr#1 + "245F\relax}%
\fi
}
\begin{document}
① ② ③ ④ ⑤ ⑥ ⑦ ⑧ ⑨ ⑩ ⑪ ⑫ ⑬ ⑭ ⑮ ⑯ ⑰ ⑱ ⑲ ⑳\par
\circlednum{1}
\circlednum{2}
\circlednum{3}
\circlednum{4}
\circlednum{5}
\circlednum{5}
\circlednum{7}
\circlednum{8}
\circlednum{9}
\circlednum{10}
\circlednum{11}
\circlednum{12}
\circlednum{13}
\circlednum{14}
\circlednum{15}
\circlednum{16}
\circlednum{17}
\circlednum{18}
\circlednum{19}
\circlednum{20}
\end{document}
效果图如下
法II. pifont宏包