带有 tikz 外部库的 XeLaTeX 生成错误大小的 pdf

带有 tikz 外部库的 XeLaTeX 生成错误大小的 pdf

我试图将TikZ它与MWEexternal一起使用,以兼容我的大型文档,但结果却出现了错误。XeLaTeXscrbook

% !TEX TS-program = xelatex
% !TEX TS-options = -shell-escape
\documentclass{scrbook}
\usepackage[no-math]{fontspec}
\usepackage{xunicode,xltxtra}
\usepackage{tikz}
\usetikzlibrary{external}
\tikzexternalize[up to date check=diff]
\tikzset{external/system call={xelatex \tikzexternalcheckshellescape -halt-on-error -interaction=batchmode -jobname "\image" "\texsource"}}
\begin{document}
  \tikzsetnextfilename{tikz-export-xelatex-temp}
  \begin{tikzpicture}
    \draw[thick,blue] (0,0) -- (5,5) -- (0,5) -- (5,0);
  \end{tikzpicture}
\end{document}

删除第一行(告诉我的 TextMate 使用 xelatex)、第 4、5 行(的字体包xelatex)和第 9 行(修改后的 shell-escape-calls 系统调用xelatex),该示例会在相应的文件夹中生成一个漂亮的 5×5 厘米 PDF 调用tikz-expoer-xelatex-temp.pdf

但是,使用 编译此代码时xelatex,也会生成 PDF(如上命名),但尺寸不是 5x5cm,而是完整的 DinA4。在第二次运行中将其包含到文档中( 的主要原因externalize)时,它看起来相当奇怪。

我在 Mac OS 10.11.2 上运行 MacTeX 2015(TeXLive 2015)并使用 TextMate 进行编辑。

我的问题是

为什么xelatex似乎无法确定 的大小tikzpicture?我该如何解决这个问题并正确external使用xelatex

更新 为了完整起见,这里是我的文件列表(\listfiles在序言中)

 *File List*
 scrbook.cls    2015/10/03 v3.19a KOMA-Script document class (book)
scrkbase.sty    2015/10/03 v3.19a KOMA-Script package (KOMA-Script-dependent ba
sics and keyval usage)
 scrbase.sty    2015/10/03 v3.19a KOMA-Script package (KOMA-Script-independent 
basics and keyval usage)
  keyval.sty    2014/10/28 v1.15 key=value parser (DPC)
scrlfile.sty    2015/10/03 v3.19a KOMA-Script package (loading files)
tocbasic.sty    2015/10/03 v3.19a KOMA-Script package (handling toc-files)
scrsize11pt.clo    2015/10/03 v3.19a KOMA-Script font size class option (11pt)
typearea.sty    2015/10/03 v3.19a KOMA-Script package (type area)
fontspec.sty    2015/09/24 v2.4e Font selection for XeLaTeX and LuaLaTeX
   expl3.sty    2015/11/04 v6224 L3 programming layer (loader) 
expl3-code.tex    2015/11/04 v6224 L3 programming layer 
l3unicode-data.def    2015/07/20 v5676 L3 Unicode data
l3xdvipdfmx.def    
  xparse.sty    2015/11/04 v6224 L3 Experimental document command parser
fontspec-patches.sty    2015/09/24 v2.4e Font selection for XeLaTeX and LuaLaTe
X
fontspec-xetex.sty    2015/09/24 v2.4e Font selection for XeLaTeX and LuaLaTeX
 fontenc.sty
  eu1enc.def    2010/05/27 v0.1h Experimental Unicode font encodings
  eu1lmr.fd    2009/10/30 v1.6 Font defs for Latin Modern
xunicode.sty    2011/09/09 v0.981 provides access to latin accents and many oth
er characters in Unicode lower plane
 eu1lmss.fd    2009/10/30 v1.6 Font defs for Latin Modern
graphicx.sty    2014/10/28 v1.0g Enhanced LaTeX Graphics (DPC,SPQR)
graphics.sty    2014/10/28 v1.0p Standard LaTeX Graphics (DPC,SPQR)
    trig.sty    1999/03/16 v1.09 sin cos tan (DPC)
graphics.cfg    2010/04/23 v1.9 graphics configuration of TeX Live
   xetex.def    2015/09/11 v4.06 LaTeX color/graphics driver for XeTeX (TeX Liv
e/RRM/JK)
infwarerr.sty    2010/04/08 v1.3 Providing info/warning/error messages (HO)
 ltxcmds.sty    2011/11/09 v1.22 LaTeX kernel commands for general use (HO)
fontspec.cfg
 xltxtra.sty    2010/09/20 v0.5e Improvements for the "XeLaTeX" format
ifluatex.sty    2010/03/01 v1.3 Provides the ifluatex switch (HO)
 ifxetex.sty    2010/09/12 v0.6 Provides ifxetex conditional
realscripts.sty    2013/03/18 v0.3c Access OpenType subscripts and superscripts

metalogo.sty    2010/05/29 v0.12 Extended TeX logo macros
    tikz.sty    2013/12/13 v3.0.0 (rcs-revision 1.142)
     pgf.sty    2013/12/18 v3.0.0 (rcs-revision 1.14)
  pgfrcs.sty    2013/12/20 v3.0.0 (rcs-revision 1.28)
everyshi.sty    2001/05/15 v3.00 EveryShipout Package (MS)
  pgfrcs.code.tex
 pgfcore.sty    2010/04/11 v3.0.0 (rcs-revision 1.7)
  pgfsys.sty    2013/11/30 v3.0.0 (rcs-revision 1.47)
  pgfsys.code.tex
pgfsyssoftpath.code.tex    2013/09/09  (rcs-revision 1.9)
pgfsysprotocol.code.tex    2006/10/16  (rcs-revision 1.4)
  xcolor.sty    2007/01/21 v2.11 LaTeX color extensions (UK)
   color.cfg    2007/01/18 v1.5 color configuration of teTeX/TeXLive
 pgfcore.code.tex
pgfcomp-version-0-65.sty    2007/07/03 v3.0.0 (rcs-revision 1.7)
pgfcomp-version-1-18.sty    2007/07/23 v3.0.0 (rcs-revision 1.1)
  pgffor.sty    2013/12/13 v3.0.0 (rcs-revision 1.25)
 pgfkeys.sty    
 pgfkeys.code.tex
 pgfmath.sty    
 pgfmath.code.tex
  pgffor.code.tex
    tikz.code.tex
pdftexcmds.sty    2011/11/29 v0.20 Utility functions of pdfTeX for LuaTeX (HO)
   ifpdf.sty    2011/01/30 v2.3 Provides the ifpdf switch (HO)
   t3cmr.fd    2001/12/31 TIPA font definitions

更新 #2 我把 的调用改为\tikzexternalize使用check=diff,以避免在 Mac OS 上出现警告。

更新 #3 根据@jfbu 的评论,我使用更新了我的软件包TeX Live Utility(将 Mac OS el Capitan 的可执行文件路径更新为 之后/Library/TeX/texbin/)并使用更新的文件列表(参见上文),但问题仍然存在。

答案1

目前,安装最新的 TeX 后不会出现此问题(尤其是tikz.sty 2015/08/07 v3.0.1a (rcs-revision 1.151))。

根据 OP 的评论,虽然安装了最新版本,但在本地树中有一个较旧的版本TikZ/pgf( tikz.sty 2013/12/13 v3.0.0 (rcs-revision 1.142)) 隐藏了较新的版本,这确实显示了问题。

相关内容