开发者

get height on a block of latex output

I am trying to determine how to get the height on a block of latex output (not the whole document, and not the code..but rather a block of output). As an example of what I am trying to accomplish: i were to have the latex code

$\sum_{i=0}^\infty \frac{1}{n}>\infty$ \newline hello world \newline hello universe

The height of the above block of text is dependent on a number of things-font, margin size, and of course what the text is, as chang开发者_开发问答ing any of these parameters changes how many inches that output would be, but with default formatting its output would be something like 2 inches high.

I am hoping there is a package that does this!


Usually, the trick is to put whatever you want to measure into a box and then simply not typeset the box, but measure it:

\newdimen\height
\setbox0=\hbox{\Huge Hello, World!}
\height=\ht0 \advance\height by \dp0
The height is: \the\height


I think this will work:

\newlength{\somenamehere}
\settoheight{\somenamehere}{\hbox{...}}

Where ... is your content you like to measure. And you can then use \somenamehere as the height of that content.


Example:

\documentclass[english]{article}
\usepackage[T1]{fontenc}
\usepackage[latin9]{inputenc}
\usepackage{babel}

\begin{document}
\newlength{\heightofhw}
\settoheight{\heightofhw}{\hbox{Hello World!}}
Value = \the\heightofhw
\end{document}

Will output:

Value = 6.8872pt


Note:

  • Values of lengths are stored as points, and 1 inch ≈ 72.27 pt
  • This does not require any additional packages.

Update:

Use \hbox to correctly calculate the height of a different sized environment, but it won't work with newlines :-(

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜