我想使用 XeTeX 创建演示文稿,但我在页面布局方面遇到了麻烦。预期结果显示为 4:3 宽高比、居中内容和边距为总宽度/高度的 1/8 的 PDF(仅目测)。
以下是我尝试编写的代码:
\pdfpagewidth=12 true cm
\hsize=\pdfpagewidth
\multiply\hsize by 7
\divide\hsize by 8
\advance\hoffset by -1 true in
\hoffset=\pdfpagewidth
\advance\hoffset by -\hsize
\divide\hoffset by 2
\pdfpageheight=\pdfpagewidth
\multiply\pdfpageheight by 3
\divide\pdfpageheight by 4
\vsize=\pdfpageheight
\multiply\vsize by 7
\divide\vsize by 8
\advance\voffset by -1 true in
\voffset=\pdfpageheight
\advance\voffset by -\vsize
\divide\voffset by 2
\headline={}
它非常冗长,但我不知道有更简单的方法来做到这一点。
\input macros
\noindent TL\hfil TR
\vfill
\noindent BL\hfil BR
\bye
但输出不在页面居中。
答案1
\advance\hoffset by -1 true in
\hoffset=\pdfpagewidth
是相同的
\hoffset=\pdfpagewidth
您只是覆盖了第一个设置。
另外你没有考虑到\parfillskip
将文本拉伸到整个宽度
\pdfpagewidth=12 true cm
\hsize=\pdfpagewidth
\multiply\hsize by 7
\divide\hsize by 8
\hoffset=\pdfpagewidth
\advance\hoffset by -\hsize
\divide\hoffset by 2
\advance\hoffset by -1 true in
\pdfpageheight=\pdfpagewidth
\multiply\pdfpageheight by 3
\divide\pdfpageheight by 4
\vsize=\pdfpageheight
\multiply\vsize by 7
\divide\vsize by 8
\voffset=\pdfpageheight
\advance\voffset by -\vsize
\divide\voffset by 2
\advance\voffset by -1 true in
\headline={}
\input macros
\noindent TL\hfill TR
\vskip 0pt plus 1filll
\noindent BL\hfill BR
\bye