为什么 pdflatex 和 latex LNCS 输出看起来不同?

为什么 pdflatex 和 latex LNCS 输出看起来不同?

我发现,与使用 命令pdflatex相比,使用嵌入式 postscript (eps)latex可能需要更多努力;并且 cygwin 的 write18 权限可能不安全。我想没问题,我可以直接使用latex。然而,两者给出的结果不同。

我通过解压 Springer LNCS 文件进行了测试llncs2e.zip在第一种情况下我使用了:

pdflatex llncs.dem && pdflatex llncs.dem

在第二种情况下我使用了:

latex llncs.dem && latex llncs.dem && dvipdf llncs.dvi

在第二种情况下,我发现底部边距看起来非常大,而顶部边距太小;我认为这看起来不可接受。我不是在寻找修复边距的方法,但想知道我在哪里错了,假设两条路线都会产生相同的输出。

答案1

该类llncs的工作方式应与标准类相同article。您可以指定a4paper选项以获取 A4 纸张大小,或省略该选项以获取信纸大小。

有了 pdflatex,这就是您所需要的全部。

使用 latex + dvips + ps2pdf,你将需要在 dvips 命令行上指定正确的纸张大小,例如dvips -t a4。该dvipdf工具似乎类似。


请注意,dvips 可能会或可能不会意外生成正确的纸张大小,具体取决于您的系统配置。最好不要依赖它;始终在命令行上指定纸张大小,否则当您尝试在另一台计算机上编译它时,您会遇到意外情况。


最后,LNCS 书籍当然没有 A4 或 letter 的物理纸张大小。如果您想生成与最终印刷书籍纸张大小相匹配的 PDF 文件,这里你可以找到一个非常有用的技巧:使用 pdflatex 并指定

\pdfpagesattr{/CropBox [92 112 523 778]}

答案2

据我所知,既没有类也没有设置(pdf)纸张大小。也许在一种情况下你会得到 letterpaper。除此之外:所有不同的 pdf 路径(pdflatex、xelatex、lualatex、latex+dvips+ps2pdf、latex+dvipdfmx、latex +...)都会产生不同的结果。

答案3

根本原因是不同的坐标系约定:DVI 和 PostScript 的原点都在页面的左上角,而 PDF 不幸将其移到了左下角。

因此,任何在 PostScript 和 PDF(或 DVI 和 PDF)之间进行转换的程序都必须假设纸张高度,并将所有坐标按该高度移动。不幸的是,仍然有两种不同的常用默认纸张高度:ISO A4(297 毫米)和美国信纸(279 毫米)。如果一个程序假设 A4 而另一个程序假设美国信纸,则您的文本将向上或向下移动 297 毫米 - 279 毫米 = 18 毫米。正如其他人已经解释的那样,将纸张尺寸设置为一致(最好是最终打印文档的尺寸)将解决此问题。

相关内容