我经常使用 tikz(和 tikzpicture),但在 pgf 和 pstricks 的最新更新之前,文件编译得很好,但现在似乎不行了(至少在我的 MikTeX 安装中)。MWE(见下文)似乎编译正确,但无法使用 yap 渲染 DVI,并且 dvi -> ps -> pdf 失败(dvi -> ps 似乎没问题——只要不抛出错误),但 ps2pdf 失败得很惨,出现以下错误:
Error: /undefined in XC@.
Operand stack:
--nostringval-- --nostringval-- --nostringval-- --nostringval-- -
-nostringval-- --nostringval--
Execution stack:
%interp_exit .runexec2 --nostringval-- --nostringval-- --
nostringval-- 2 %stopped_push --nostringval-- --nostringval-- --
nostringval-- false 1 %stopped_push 2045 1 3 %oparray_pop
2044 1 3 %oparray_pop 2025 1 3 %oparray_pop 1884 1 3
%oparray_pop --nostringval-- %errorexec_pop .runexec2 --nostringval-
- --nostringval-- --nostringval-- 2 %stopped_push --nostringval--
Dictionary stack:
--dict:979/1684(ro)(G)-- --dict:1/20(G)-- --dict:87/200(L)-- --
dict:182/300(L)-- --dict:58/200(L)--
Current allocation mode is local
Current file position is 99615
GPL Ghostscript 9.26: Unrecoverable error, exit code 1
以下是 MWE:
\documentclass[12pt,letterpaper,oneside]{article}
\usepackage{tikz}
\usetikzlibrary{decorations,shapes,arrows,matrix,positioning}
\begin{document}
\begin{center}
\begin{tikzpicture}[x=0.175cm,y=0.175cm,scale=1]
% set up maximum and minimum x- and y-coordinates
\def\xmin{0}
\def\xmax{23.5}
\def\ymin{0}
\def\ymax{23.5}
% draw and label axes
\draw[->,thick] (\xmin,0) -- (\xmax,0) node[below=8pt,near end]
{\small{abundance ($N$)}};
\draw[->,thick] (0,\ymin) -- (0,\ymax) node[above=12pt,near
start,rotate=90] { \small{birth rate ($b$)}};
% draw vertical reference line at K/2=50
\draw[color=black, thick, smooth] (0,20) -- (20,0)
node[below=6pt,midway,rotate=-45] {\small{slope~$=a$}};
% draw circle around point where function intersects x-axis
\draw [red] (0,20) ellipse (0.2cm and 0.2cm) node[right=3pt,black] {$b_0$};
\end{tikzpicture}
\end{center}
\end{document}
答案1
dvips
的驅動程式有pgf/tikz
錯誤!
[...]
\begin{center}
\special{ps: /XC@. {0 setgray } def }
\begin{tikzpicture}[x=0.175cm,y=0.175cm,scale=1]
[...]
或者
\documentclass{article}
\PassOptionsToPackage{prologue}{xcolor}
\usepackage{tikz}
[...]
答案2
这是 PGF 中的一个错误。不幸的是,它是在最后一个稳定版本发布之前引入的 —— 显然是在我们的最终测试中途,因此它没有被注意到。
请不要使用建议的解决方法(使用序言选项),因为它会破坏名称中带有空格的所有颜色。这包括带有 的 pgfplots mapped color
。
我们对此深感抱歉,并将很快发布修复版本。