默认情况下,LaTeX 会在文档左侧(和顶部)添加一英寸(72.27pt)。这里我想证明这一点,如下所示。但我错过了一些其他页面布局宏来从中减去\paperwidth
。
% the objective is to prove that
% left padding of 1in = 72.27pt
% has been added by default
% by LaTeX
\documentclass{article}
\begin{document}
\the
\dimexpr
\paperwidth
-\hoffset
-\oddsidemargin
-\textwidth
-\marginparsep
-\marginparwidth
% minus some other page layout macros
% should be there but I don't know
\relax
\end{document}
72.27pt
从中减去\oddsidemargin
、 、 ...怎么表示?\textwidth
\paperwidth
我需要一个下面红色部分的长度宏。
我接受 egreg 回答的原因是由于他的以下评论。
再次强调:红色显示的长度不是直接可用的,而只能通过计算获得:它是
\paperwidth-1in-\hoffset-\oddsidemargin-\textwidth-\marginparsep-\marginparwidth
因此不可能得到所要求的表达式来证明72.27pt
。
答案1
文本块的左上角放置
1in + \hoffset + \oddsidemargin
从页面左边框开始
1in + \voffset + \topmargin + \headheight + \headsep
从上边界算起。当然,\evensidemargin
当页面被视为右页时使用(仅在twosided
打印时且页码为偶数时)。
您可以使用以下示例来“证明”您想要什么:
\documentclass[a4paper]{article}
\usepackage{layout}
\addtolength{\marginparwidth}{\dimexpr\paperwidth-1in-\hoffset-\oddsidemargin-\textwidth-\marginparsep-\marginparwidth-1pt\relax}
\begin{document}
\layout
\end{document}
现在,代表边注区域的框将略微延伸到纸张的右边缘(实际上是 1pt,但由于线条有厚度,因此图像并不完美)。
你用红色画的长度正好是
\paperwidth-1in-\hoffset-\oddsidemargin-\textwidth-\marginparsep-\marginparwidth
如果你需要的只是一个非标准的页面尺寸且没有边距,那么答案是几何学:
\documentclass{article}
\usepackage[paperwidth=1in,paperheight=1in,margin=0pt]{geometry}
该包执行的计算总结在文件中log
:
* paper: custom
* layout: <same size as paper>
* layoutoffset:(h,v)=(0.0pt,0.0pt)
* modes:
* h-part:(L,W,R)=(0.0pt, 72.26999pt, 0.0pt)
* v-part:(T,H,B)=(0.0pt, 72.26999pt, 0.0pt)
* \paperwidth=72.26999pt
* \paperheight=72.26999pt
* \textwidth=72.26999pt
* \textheight=72.26999pt
* \oddsidemargin=-72.26999pt
* \evensidemargin=-72.26999pt
* \topmargin=-109.26999pt
请注意,就 TeX 而言,72.27pt 与 72.26999pt 相同。