Tikz externalize 与 xelatex 和 scrbook 一起使用会产生错误大小的图形-pdf

Tikz externalize 与 xelatex 和 scrbook 一起使用会产生错误大小的图形-pdf

当使用 xelatex 和 scrbook 以及 tikz 和 externalize 时,我得到的输出图形大小错误,因此不仅是图形本身,还有整个 DIN-A4 页面,图形位于左上角。这显然会破坏主 pdf。我检查了所有细节,现在我看到唯一有帮助的就是将 scrbook 更改为 book。然后图形 pdf 会按应有的方式生成(只有图形和周围的空白),一切都很好。现在,我想使用 scrbook 而不是 book。有人知道这是否确实是 scrbook 的问题,或者也许这只是一个巧合,主要错误在其他地方?谢谢,Dmitri。

编辑:一个最小的例子看起来像这样

\documentclass{scrbook}
\usepackage{fontspec} 
\usepackage{polyglossia}
\setmainlanguage{german}

\usepackage{tikz}
\usetikzlibrary{external}
\tikzset{
    external/system call={%
        xelatex \tikzexternalcheckshellescape
        -halt-on-error- -interaction=batchmode --shell-escape
        -jobname "\image" "\texsource"}}
\tikzexternalize

\begin{document}
    A simple image is\tikz\fill(0,0)circle(5pt);.
\end{document}

这样会生成一个有两页的 PDF,第二页上有一个点,没有任何文本。使用 book 则会生成一个只有一侧的 PDF,并且点与文本位于同一行。

答案1

好的,问题解决了。原来是我的 tikz 版本太旧了。安装新版本后一切都好了,甚至不再需要 tikzset,这个:

\tikzset{
    external/system call={%
        xelatex \tikzexternalcheckshellescape
        -halt-on-error- -interaction=batchmode --shell-escape
        -jobname "\image" "\texsource"}}

可以被删除。

相关内容