我已经创建了垂直分割圆,它可以独立工作,但是当我将此代码添加到我的大学模板。这是独立代码:
\documentclass[tikz]{standalone}
% BEGIN section 1
\usepackage{tikz}
\usetikzlibrary{calc, positioning,fit}
% END section 1
\begin{document}
% BEGIN section 2
\begin{tikzpicture}[scale=1]
\tikzset{
pics/circle vertically split/.style 2 args = {
code = {
\pgfmathsetmacro{\widthOne}{width("#1")+4pt}
\pgfmathsetmacro{\widthTwo}{width("#2")+4pt}
\node[text=green](-this_is_currcent_center){+};
\node[xshift=-\widthOne/2] (-left) {#1};
\node[xshift=\widthTwo/2] (-right) {#2};
\node[fit=(-left)(-right),draw,circle,text=red](-shape) {+};
\node(-splitline) at ($ (-left.east)!.5!(-right.west) $) {};
\draw (-shape.north east -| -splitline.center) -- (-shape.south east -| -splitline.center);
}
}
}
% this doesn't center correctly but it's not part of this question
\pic[inner sep = 1pt, align=left] (A) {circle vertically split={$Aaaaaa$}{$B$}};
\pic[inner sep = 1pt, align=left, right = of A-shape] (B) {circle vertically split={A}{$Bbbbb$}};
\end{tikzpicture}
% END section 2
\end{document}
添加大学模板后出错:
!软件包 PGF 数学错误:未知函数“Aaaaaa”(在‘width(""Aaaaaa"")+4pt’中)。
如何重现错误
对于任何想要帮助我的人,我创建了一种在 30 秒内快速重现错误的方法:
- 克隆存储库(这是模板的分支)--
git clone https://github.com/xoac/aghdpl-imir.git
- 结帐至分支分割环 --
git checkout split-circle
- 使用命令编译
latexmk -outdir=build -pdf praca.tex
附加信息:
检查原始模板与更改后模板之间的差异git diff master split-circle
pdflatex --version
:
pdfTeX 3.14159265-2.6-1.40.20 (TeX Live 2019/Arch Linux) kpathsea 版本 6.3.1
版权所有 2019 Han The Thanh (pdfTeX) 等。没有任何保证。本软件的再分发受 pdfTeX 版权和宽 GNU 通用公共许可证条款的约束。
有关这些事项的更多信息,请参阅名为 COPYING 的文件和 pdfTeX 源。pdfTeX
的主要作者:Han The Thanh (pdfTeX) 等。
使用 libpng 1.6.37 编译;使用 libpng 1.6.37
使用 zlib 1.2.11 编译;使用 zlib 1.2.11
使用 poppler 版本 0.85.0 编译
如何找到添加我的代码后停止编译的原因?
我创建了垂直分割圆,混合了以下两种解决方案:1。https://tex.stackexchange.com/a/528851/192768 2.https://tex.stackexchange.com/a/186506/192768
答案1
问题可能是你的格式使用了
\usepackage[english, polish]{babel}
它转换了一些特殊字符的含义(技术上来说使角色活跃),在这种情况下可能是引号"
,我猜它是用来添加一些重音的……(我不懂波兰语,所以不知道细节)。
如果你使用 utf8 输入特殊字符,你可以尝试使用以下方法禁用babel
简写
\usepackage[english, polish, shorthands=off]{babel}
或者您可以尝试加载 Ti钾Z 库
\usetikzlibrary{babel}
我认为您的例子中这两种方法都有效。
babel 和 tikz 使用 \draw 的问题我怀疑与此非常相似。