我需要使用其他版本的 circuitikz。我该怎么做?

我需要使用其他版本的 circuitikz。我该怎么做?

我有一个circuitikz在一种配置上运行良好的程序,但在另一种配置上运行不佳;例如:

\begin{circuitikz}
    \draw  (0,0) node[dipchip]{CHIP1};
\end{circuitikz}

在一台计算机上运行正常,但在另一台计算机上却出错。这是怎么回事?

错误类似于:I do not know the key /tikz/dipchip/或类似于不存在的/tikz/circuitikz/键。

答案1

最有可能的问题在于,circuitikz两个安装中的 版本不同。要检查这一点,请在源文档中的某个位置输入以下命令\pgfcircversion

Circuitikz version here is \pgfcircversion{} released on \pgfcircversiondate{}.

您将获得,例如(我的个人安装):

在此处输入图片描述

或者,2020 年 1 月 18 日在 Overleaf 上发布:

在此处输入图片描述

请注意,如果您的文档是一张独立的图片,您可能需要将这些命令放在节点中,例如

    \draw (0,0) node {version: \pgfcircversion};

等等。

现在你可以看看手册(最新版本位于http://circuitikz.github.io/circuitikz/circuitikzmanualgit.pdf--- 接近尾声时变更日志例如,该部分将告诉您该芯片是在 0.9.0 版本中添加的)。

因此,现在您的电路不工作可能有两种情况:

  1. (最有可能)您需要升级circuitikz出现故障的系统;或者
  2. (可能发生)您遇到了向后兼容性问题或新版本中引入的错误。

情况 1:我需要/想要更新circuitikz,如果你在自己的本地系统上,你有几个选择 --- 所有这些都在这个很好的答案。基本上,你可以(详细信息在链接的答案中有解释!):

  • 更新你的 TeX/LaTeX 安装(如果你使用的是发行版软件包,比如 Ubuntu,这通常是不可能的);
  • 下载最新版本来自CTAN或者来自 GitHub并将其安装在您的本地TEXMF树中;
  • 如果你使用在线服务,你可以使用circuitikzgit下面解释的技巧——例如,这将在背面

情况 2 (我需要降级),你最好的选择仍然是升级到最新版本并使用内部回滚函数;在 1.4.0 之前它处于非常黑客的状态,但在该版本之后,您只需使用标准回滚即可\usepackage[options]{circuitikz}[=v1.1.2]

使用circuitikzgithack(升级和降级)

以一种更“黑客”的方式(它将会打破如果你使用任何包依赖于取决于circuitikz;我认为目前还没有,但你永远不知道)你可以使用另一种机制:circuitikz提供一种可以在情况 1 和情况 2 中使用的方法 --- 在紧急情况下更容易应用,但如前所述有点危险。如果你转到页面https://circuitikz.github.io/circuitikz/您将看到已发布版本的列表:

在此处输入图片描述

转到您想要使用的版本的主文件链接并下载它(取决于您的浏览器,可以是右键单击并选择“将文档下载为...”或类似操作。),然后将该文件保存在circuitikzgit.sty您的文档可以读取的位置(最简单:在与主文档相同的文件夹中 - 这也适用于大多数在线服务。)。

现在,在你的文档中有命令的地方

\usepackage[whatever options]{circuitikz}

将其更改为

\usepackage[whatever options]{circuitikzgit}

现在您将使用已下载的版本。如果您使用库存样式文件(自 0.9.4 起),请注意样式文件也会发生变化,您可能需要下载它们并将它们也放在主目录中(它们以文件形式提供zip,您必须提取所需的文件)。

就这样;现在您的版本将如下所示:

在此处输入图片描述

(尽管在旧版本中“基本”版本号已经丢失...您必须依赖日期):

在此处输入图片描述

最后(重要的) 评论,请注意您需要检查您的选项,尤其是电压和电流方向。您必须在精细手册中阅读它,抱歉…… ;-)

相关内容