.tex

.tex

有没有办法从 .sty 文件中检索 .tex 文件的几何形状?

我希望能够自动提取以下内容:

  • 页面宽度
  • 页面高度
  • 上边距
  • 下边距
  • 右边距
  • 左边距

目标是在以下设置中使用它:

.tex

\documentclass{article}
\usepackage[letterpaper,landscape,top=.5in,bottom=.5in,right=.25in,left=.25in]{geometry}
\usepackage{mypackage}

\begin{document}

\end{document|

.sty

\NeedsTeXFormat{LaTeX2e}[1994/06/01]
\ProvidesPackage{mypackage}[yyyy/mm/dd]
\RequirePackage{xparse}
\RequirePackage{calculator}
\newlength{\TBMar}
\newlength{\RLMar}
\NewDocumentCommand{\foo}{}
{
%example function
\LENGTHADD{\TopMargin}{\BottomMargin}{\TBMar}
\LENGTHADD{\RightMargin}{\LeftMargin}{\RLMar}

\the\TBMar

\the\RLMar
}

\endinput

了解这些的目的与 tikz 图像、图表有关。

答案1

我使用下面的代码让它工作。

\newif\ifGP@geometrypreviouslyloaded
\GP@geometrypreviouslyloadedfalse

\@ifpackageloaded{geometry}
  {\GP@geometrypreviouslyloadedtrue}
  {\GP@geometrypreviouslyloadedfalse%
    \PassOptionsToPackage{\GPOpt@geometry}{geometry}%
    \RequirePackage{geometry}%
  }

\NewDocumentCommand\Foo{}
{
\paperwidth  % page width
\paperheight % page height
\Gm@tmargin  % top margin
\Gm@bmargin  % bottom margin
\Gm@rmargin  % right margin
\Gm@lmargin  % left margin
}

相关内容