在 pdfLaTeX 上编译时,以下代码(和 MWE)返回 PostScript 错误消息:
\documentclass{article}
\usepackage[dvipsnames]{xcolor}
\usepackage{pstricks}
\usepackage[pdfcrop={--hires}]{auto-pst-pdf}
\begin{document}
\begin{pspicture}(0,0)(1,1)
\psframe*[linecolor=Maroon](0,0)(1,1)
\end{pspicture}
\end{document}
错误信息如下:
/undefined in Maroon
并且没有生成图形。
这与选项和 pdfLaTeX 有关dvipsnames
,因为一方面它在 XeLaTeX 上运行良好,另一方面,如果我将svgnames
(定义Maroon
颜色名称)设置为xcolor
包的选项,它也可以很好地在 pdfLaTeX 上运行良好。
我有定义文件dvipsnam.def
,以及在 Windows XP 上运行的完整 MikTeX 2.9 安装。我已经重新安装了该xcolor
软件包。这个问题是在 Windows 自动更新后突然出现的,但我不能说这是背后的原因。此外,这是我检测到的唯一问题。有人有什么建议吗?
答案1
摘录自texdoc xcolor第 18 页和第 60 页:
自 2.01 版起,
xcolor
提供prologue
写入 PostScript 头文件的选项xcolor.pro
。此文件也可dvips
作为序言由驱动程序加载,从而使所有颜色名称都可供 PostScript 解释器使用。
prologue
与 dvips 结合的全面“命名”颜色支持选项:即时生成包含所有颜色定义的 PostScript 序言文件,可供 dvips 纳入和/或使用设备特定参数进行后期处理(例如专色)
加载prologue
时添加选项xcolor
赫伯特建议
\documentclass{article}
\usepackage[dvipsnames,prologue]{xcolor}
\usepackage{pstricks}
\usepackage[pdfcrop={--hires}]{auto-pst-pdf}
\begin{document}
\begin{pspicture}(0,0)(1,1)
\psframe*[linecolor=Maroon](0,0)(1,1)
\end{pspicture}
\end{document}