在新命令中使用新命令添加动态 tikzpicture

在新命令中使用新命令添加动态 tikzpicture

我有一个侧面块命令,可以让我非常轻松地在页面侧面添加内容,但现在我想选择在其中添加某种图表或动态图形内容。

假设我想添加一项技能/主题和一个难度级别,我不会把它写下来,而是会为该技能添加一个图标,并且我想添加一个漂亮的风格化栏来显示难度级别。

这是我的基本侧块命令:

\RequirePackage[absolute,overlay]{textpos}
\setlength{\TPHorizModule}{1cm}
\setlength{\TPVertModule}{1cm}

\newenvironment{aside}{%
    \let\oldsection\section
    \renewcommand{\section}[1]{
        \par\vspace{\baselineskip}{\Large\headingfont\color{headercolor} ##1}
    }
    \begin{textblock}{3.6}(1.5, 4.33)
        \begin{flushright}
            \obeycr
        }{%
            \restorecr
        \end{flushright}
    \end{textblock}
    \let\section\oldsection
}

然后我尝试修改它以便能够为每个“\barline”添加一个带有 tikz 的新矩形(该矩形是一个测试)。

\RequirePackage[absolute,overlay]{textpos,tikz}
\setlength{\TPHorizModule}{1cm}
\setlength{\TPVertModule}{1cm}

\newenvironment{aside}{%
    \let\oldsection\section
    \renewcommand{\section}[1]{
        \par\vspace{\baselineskip}{\Large\headingfont\color{headercolor} ##1}
    }
    \newcommand{\barline}[2]{
        \begin{tikzpicture}
            \fill[fill=chartorange, rounded corners=0.08cm](-1,0) rectangle (1.5,0.5) {##1};
        \end{tikzpicture}
    }
    \begin{textblock}{3.6}(1.5, 4.33)
        \begin{flushright}
            \obeycr
        }{%
            \restorecr
        \end{flushright}
    \end{textblock}
    \let\section\oldsection
}

用法如下:

\begin{aside}
\section{Languages}
\barline{French}{70};
\end{aside}

我的问题是,我一定做错了什么,因为我遇到了很多错误:

Option clash for package tikz. \setlength 
Command \barline already defined. \begin{aside}
Package tikz Error: Giving up on this path.Did you forget a semicolon?. \barline{French}{70}

选项冲突是我必须研究的一个软件包问题。我认为如果存在该命令,我的新命令将覆盖该命令。为什么我将分号放在新命令中后会出现问题?

我希望你能帮助我,我对于比用 LaTeX 写简单的报告更复杂的事情还很陌生,需要时间去学习。

相关内容