将标尺放在页面上的某处

将标尺放在页面上的某处

如何在页面上放置虚拟标尺(可精确测量距离),而不考虑页边距?例如,沿着页面左侧从顶部到底部。

基本上,我试图找到一个 LaTeX 等效方法,即制作一个自定义文档类,打印出该文档的 Lorem Ipsum 版本,然后手动测量边距。我见过这个帖子演示如何在 TikZ 中制作标尺,但我不知道如何1)轻松改变尺子的长度(例如,\ruler{10}{in}10 英寸的尺子),更重要的是,2)将标尺放在页面上,以便我可以测量页边距。

感谢任何能够给出答案或帮助我指明正确方向的人!

答案1

或许包裹layout会有所帮助。它提供了插入一页(单面文档)或两页(双面文档)页面的命令\layout,这些页面显示当前页面布局的相关大小。

\documentclass{book}
\usepackage{geometry}% needed if the format of the document differs from the settings of your TeX system
\usepackage{layout}
\begin{document}
  \layout
\end{document}

奇数页:

在此处输入图片描述

偶数页:

在此处输入图片描述


或者你可以使用包裹scrlayer。然后您可以使用带有 的图层定义新的页面样式contents=\layercontentsmeasure

\documentclass[a4paper]{book}
%\usepackage{geometry}
\usepackage{blindtext}

\usepackage{scrlayer}
\DeclareNewLayer[
  foreground,
  innermargin,
  contents=\layercontentsmeasure
]{measurelayer}
\DeclareNewPageStyleByLayers{measurestyle}{measurelayer}

\begin{document}
\chapter{A Chapter}
\Blindtext
\pagestyle{measurestyle}
\clearpage
\Blindtext
\clearpage
\pagestyle{headings}
\blinddocument
\clearpage
\end{document}

在此处输入图片描述

还有其他预定义的图层区域,如topmargin,,,,head...headseptextarea您也可以定义图层的大小和位置:

\DeclareNewLayer[
  foreground,
  hoffset=1cm,
  voffset=.5cm,
  width=2cm,
  height=10cm,
  contents=\layercontentsmeasure
]{measurelayer}

在此处输入图片描述

或者你可以修改预定义的图层区域:

\DeclareNewLayer[
  foreground,
  topmargin,
  addheight=\dimexpr\headheight+\headsep\relax,
  contents=\layercontentsmeasure
]{measurelayer}

在此处输入图片描述

答案2

您可以使用包在文本后面放置一个网格,而不是标尺eso-pic

\documentclass{article}
\usepackage[grid,
  gridcolor=red!20,
  subgridcolor=green!20,
  gridunit=in]{eso-pic}
\usepackage{lipsum}

\begin{document}
\lipsum 
\end{document}

在此处输入图片描述

答案3

为了实现这一目标,我们有一个新的方案,即fgruler

http://www.ctan.org/pkg/fgruler

例如,尝试以下简单的代码:

\documentclass{article}
\usepackage[type=none]{fgruler}
\begin{document}
\fgruler{upperleft}{1cm}{2cm}
text
\ruler{rightup}{3cm}
text
\end{document}

在此处输入图片描述

答案4

我用我的答案有哪些方法可以将内容绝对定位在页面上?在页面上的任何地方放置一些东西。然后,我去网上找一个不错的透明尺子,例如,https://pixabay.com/static/uploads/photo/2013/07/12/12/52/ruler-146428_960_720.png。然后我将其裁剪为 30.5 厘米虚拟宽度。最后,我\includegraphics[width=30.5cm]{}\atxy宏将其叠加在页面上的任意位置。由于其透明度,可以测量其下方的内容。

\documentclass{article}
\usepackage{everypage}
\usepackage{graphicx}
\usepackage{lipsum}
% THESE ARE LaTeX DEFAULTS; CAN CHANGE IF NEEDED.
\def\PageTopMargin{1in}
\def\PageLeftMargin{1in}
\newcommand\atxy[3]{%
 \AddThispageHook{\smash{\hspace*{\dimexpr-\PageLeftMargin-\hoffset+#1\relax}%
  \raisebox{\dimexpr\PageTopMargin+\voffset-#2\relax}{#3}}}}
% VERIFIED THAT SETTING \hoffset AND \voffset DO NOT BREAK SOLUTION.
%\hoffset=0.4in
%\voffset=0.2in
\begin{document}
\atxy{0in}{4in}{\includegraphics[width=30.5cm]{ruler-146428_960_720(cropped)}}
\atxy{1in}{10in}{\rotatebox{20}{%
  \includegraphics[width=30.5cm]{ruler-146428_960_720(cropped)}}}
\lipsum[1-5]
\end{document}

在此处输入图片描述

相关内容