使用“latex”而不是“pdflatex”命令进行编译会导致文本主体向上移动

使用“latex”而不是“pdflatex”命令进行编译会导致文本主体向上移动

我正在写一篇有特定边距要求的论文。我使用的是别人最近创建的模板(读作:未经测试?)。问题是,当我使用计算机的latex命令时,文档中的每一页文本都会垂直偏移约一英寸;但是,pdflatexlatex创建的文档具有适当的边距,并且文本正文没有垂直偏移。我的 .log 文件显示我使用的/版本pdflatex是:版本 3.141592-1.40.3(Web2C 7.5.6)(格式=pdflatex 2013.5.21)。为什么pdflatex编译时边距正确,而编译时latex却不正确?

我正在使用 Linux 的 Redhat 6 发行版。

这足以让我重现该问题:

\documentclass[12pt]{article}
\usepackage[top=1in, bottom=1in, left=1.5in, right=1in]{geometry}   
\begin{document}
text
\end{document}

答案1

您描述的症状通常表明发行版配置错误。虽然对于最终用户来说,纸张大小似乎可以正常工作,但实际上它可以针对系统使用的各种不同二进制文件进行配置,特别是程序、和dvipsdvipdfm具体而言,这些症状象征着pdftexxdvidvips程序的纸张大小被错误地设置为a4,而pdftex设置被正确设置为letter

在标准 TeX Live 系统上(即直接从 TeX Live 网页(Windows 或 Linux)或 MacTeX 发行版安装的系统),这些设置在安装时设置一次,但可以使用程序进行更改tlmgr。如果使用tlmgrletter纸张尺寸,可以使用以下命令为所有程序进行设置:

tlmgr paper letter

tlmgr然而,在 Linux 软件包系统中,不是安装,并且配置必须以不同的方式进行。

如果不使用tlmgr,则有两个命令可以设置各种配置设置:texconfig-systexconfig。前一个命令设置全局配置,必须使用 运行sudo(需要管理员访问权限)。该命令的另一个版本创建本地配置,该配置存储在TEXMFCONFIG用户主目录中的文件夹中。

因此,要将程序的纸张尺寸设置更改dvipsletter(系统的正确设置),您需要使用以下命令之一,具体取决于您是否具有管理员权限:

texconfig-sys dvips paper letter

texconfig dvips paper letter

这种错误配置是如何发生的?我不能肯定,但在 2010 年的 TeX Live 中有一个错误导致了这种情况:当其他程序设置为 时,dvips纸张大小被设置为。RedHat Linux 软件包可能延续了这个错误,或者只是系统以某种方式配置错误。a4letter

相关内容