我正在尝试使用 pstricks 和 XeLaTex 创建一个覆盖整个页面的矩形;例如
\documentclass[landscape,a0b,final]{a0poster}
\usepackage{pstricks}
\usepackage{pst-grad}
\begin{document}
\psframe(0,0)(\textwidth,-\textheight)
\end{document}
这将产生一个 A4 宽度的剪切矩形不是横向 a0。如果我将文档类别选项从横向更改为纵向,它会正确生成矩形。但是在横向模式下,由于图像在 a4 宽度处被截断,因此缺少右侧。
谷歌了一下,我发现需要在 Ghostscript 配置文件中设置纸张大小。所以我使用了命令
kpsewhich -progname=dvipdfmx -format='other text files' dvipdfmx.cfg
找到配置文件。根据网上的建议,我找到了以下行:
D "gs -q -dNOPAUSE -dBATCH -dEPSCrop -sPAPERSIZE=a0 -sDEVICE=pdfwrite ..."
这表明纸张尺寸被设置为 a0。在配置文件中,有一些来自开发人员的评论:
2014 年,我们发现需要 -sPAPERSIZE=a0 来支持 xetex 下的 pstricks;否则,图像会被裁剪(请参阅http://tug.org/pipermail/xetex/2014-November/025664.html)。幸运的是,同时使用 -dEPSCROP 和 -sPAPERSIZE=a0 似乎没问题。因此我们下面就这么做。
但是,就我而言,不起作用-sPAPERSIZE=a0
。我尝试编辑配置文件,将 更改为 ,gs
这样rungs
就完全删除了矩形(配置文件中还有开发人员的评论,说明rungs
用作包装器)。我还将其更改-sPAPERSIZE=a0
为-sDEFAULTPAPERSIZE=a0
,但没有任何效果。
由于我完全困惑了,所以非常感谢您的帮助。
作为参考,我正在运行 Ubuntu 18.04 和 Texlive 2017。
编辑:我刚刚在配置文件中发现了一行,其中包含另一个名为的配置文件:dvipdfmx-paper.cfg
。该文件里面只有一行
p a4
噢,我想到了!但是,将此行更改为p a0
没有任何效果。
答案1
使用
\documentclass{a0poster}% has the same options as default
\usepackage{pstricks}
\xkoord=3370
\ykoord=2594
\begin{document}
\psline(0,0)(\textwidth,-\textheight)
\psframe(0,0)(\textwidth,-\textheight)
\end{document}
a0header.ps
这些值被写入稍后由读取的文件中xdvipdfmx
。但是 paperwidth/height 的顺序是错误的。