我在 Windows 7 上使用 TeX Live 2010。我没有编译纯 TeX 输入文件的经验。
下面我输入的文件正确吗?
% gettingstarted.tex \input pstricks \topmargin=-72.27pt \oddsidemargin=-72.27pt \paperwidth=72.27pt \paperheight=72.27pt \parindent=0pt \special{papersize=\the\paperwidth,\the\paperheight} \pspicture(\paperwidth,\paperheight) \psframe(\paperwidth,\paperheight) \endpspicture \bye
我必须执行哪个普通 TeX 编译器才能获得 DVI 输出?语法是什么?
我尝试使用tex gettingstarted.tex
并收到以下错误:
答案1
如果你想从 e-TeX 扩展中获益,你可以使用 pdftex;在 TeX Live 上,它可用于 DVI 输出,或者etex
从命令行,
pdftex --output-format=dvi
Plain TeX 没有太多的页面格式参数:文字块的左上角距离纸张左边缘 1in,距离纸张上边缘 1in。
为了移动文本块,必须修改输出例程或设置\hoffset
和\voffset
。因此
\hoffset=-72.27truept
\voffset=-72.27truept
\special{papersize=72.27pt,72.27pt}
\hsize=72.27truept
\vsize=72.27truept
\parindent=0pt
\nopagenumbers
\input pstricks
\pspicture(72.27pt,72.27pt)
\psframe(72.27pt,72.27pt)
\endpspicture
\bye
否则,\nopagenumbers
数字就会“打印”在页面区域之外。
经过修改的输出例程使得无需采取行动\hoffset
,\voffset
并且
\catcode`@=11
\def\xportoutput#1#2{%
\shipout\vbox{\vglue#1\relax
\moveright#2\vbox{\makeheadline\pagebody\makefootline}}%
\advancepageno
\ifnum\outputpenalty>-\@MM \else\dosupereject\fi}
\catcode`@=12
\output{\xportoutput{-72.27truept}{-72.27truept}}
可以将两个参数更改为\xportoutput
,例如,使文本块的位置适应 A4 纸。参数分别是相对于默认参考点的水平和垂直位移。最好使用 ,truept
以免应用\mag
因子。
答案2
您的输入文件不正确,因为您尝试使用的各种尺寸未由纯 TeX 格式定义。
就工具本身而言,它只是tex
:
tex <filename>
答案3
% gettingstarted.tex
\input pstricks
\parindent=0pt
\special{papersize=72.27pt,72.27pt}
\pspicture(72.27pt,72.27pt)
\psframe(72.27pt,72.27pt)
\endpspicture
\bye
答案4
您可以\input eplain
* 使用这些命令,但\oddsidemargin
您可以使用(出于这个特定问题的目的)命令除外\leftmargin
。