我在我的一个文件中绘制了一个图表,如下所示:
...
\usepackage{pstricks} % I assume relevant
\usepackage{graphs} %Definitely relevant
\usepackage{pifont, marvosym,amssymb,mathrsfs, manfnt, amsfonts, yhmath, moreverb, pseudocode,stmaryrd }
\usepackage[tiling]{pst-fill} % PSTricks package for filling/tiling
\usepackage{pst-text} % PSTricks package for character path
\usepackage{pst-grad} % PSTricks package for gradient filling
...
\begin{pspicture}(0,0)(1,.25)
\rput(2,0){\begin{graph}(1,1) \roundnode{A}(-1,1)
\roundnode{B}(1,1)\roundnode{C}(1,-1)\roundnode{D}(-1,-1)
\edge{A}{B}\edge{B}{C}\edge{C}{D}\edge{D}{A}\autonodetext{A}[w]{01}
\autonodetext{B}[e]{11}\autonodetext{C}[e]{10}\autonodetext{D}[w]{00}
\end{graph}
}
\rput(1.5,-1.95){$\mathbf{Q_2}$}
\end{pspicture}
由于这是分为数十个文件的 400 页书的一部分,我无法包含所有细节,但我希望我包含了相关细节。
当我使用 latex、dvips 和 ps2pdf 进行编译时,这工作得很好。但我已经改用 XeLaTeX,这样我就可以让表单与 hyperref 一起工作(这 3 个步骤之一不喜欢我的 TextFields)。一切都编译了,但在使用 graph/pspicture 完成的所有绘图中(大多数在 pspicture 中有一个图形,如上所示,但有些只有图形),线条缺失(但是,节点处的值已打印)。这是别人写的代码(取自一本开源书籍),所以我完全不知道,而且我以前从未真正使用过 pspicture/graph。我希望避免使用 tikz 或其他东西重新绘制所有图片。
有没有想过为什么用 XeLaTeX 编译时线条无法绘制?由于这是我第一次尝试使用 XeLaTeX,所以我不确定所有的细微差别。
答案1
似乎在两个编译过程(latex-->dvips-->ps2pdf 与 XeLaTeX)中存在一些差异,这使得适用于前者的 PSTricks 并不总是适用于后者。解决方案似乎是不要对此类文件使用 XeLaTeX,或者使用 TikZ 重新绘制它们。