我在使用软件包时遇到问题geometry
。我想找出页面(布局)的参数,例如文本宽度、布局高度等。我希望我的页面有一个动态布局,不需要数字或常量。
我已经找到了很多页面,但到目前为止我还不能正确地做到这一点。
例如:如何将 layoutwidth 的值(来自包手册width=\Gm@layoutwidth
)打印到文档或在对象的 TiKZ 参数中使用它。
答案1
您可以使用以下verbose
选项:
\documentclass{book}
\usepackage[
a4paper, twoside,
layout=b5paper,
left=2cm, hmarginratio=2:1, includemp, marginparwidth=43pt,
bottom=1cm, foot=.7cm, includefoot,
heightrounded,
columnsep=1cm,
verbose
]{geometry}
\usepackage{kantlipsum}
\begin{document}
\kant
\end{document}
您会在文件中发现.log
,
*geometry* driver: auto-detecting
*geometry* detected driver: pdftex
*geometry* verbose mode - [ preamble ] result:
* driver: pdftex
* paper: a4paper
* layout: <custom>
* layout(width,height): (500.7685pt,711.3189pt)
* layoutoffset:(h,v)=(0.0pt,0.0pt)
* hratio: 2:1
* modes: includefoot includemp twoside heightrounded
* h-part:(L,W,R)=(56.9055pt, 415.41025pt, 28.45274pt)
* v-part:(T,H,B)=(85.35913pt, 597.50702pt, 28.45274pt)
* \paperwidth=597.50787pt
* \paperheight=845.04684pt
* \textwidth=365.41025pt
* \textheight=574.0pt
* \oddsidemargin=-15.36449pt
* \evensidemargin=6.18275pt
* \topmargin=-16.97835pt
* \headheight=12.0pt
* \headsep=18.06749pt
* \topskip=10.0pt
* \footskip=19.91684pt
* \marginparwidth=43.0pt
* \marginparsep=7.0pt
* \columnsep=28.45274pt
* \skip\footins=9.0pt plus 4.0pt minus 2.0pt
* \hoffset=0.0pt
* \voffset=0.0pt
* \mag=1000
* \@twocolumnfalse
* \@twosidetrue
* \@mparswitchtrue
* \@reversemarginfalse
* (1in=72.27pt=25.4mm, 1cm=28.453pt)
这些参数在运行时可用:例如\Gm@layoutwidth
是一个尺寸参数,您可以在需要长度时访问它;只需在文档前言中添加
\newcommand{\geometrylen}[1]{\csname Gm@#1\endcsname}
你可以做
width=\geometrylen{layoutwidth}
需要指定长度。
你甚至可以说
\texttt{\the\geometrylen{layoutwidth}}
并500.7685pt
打印出来。