2010-05-30 2 views
6

Я пытаюсь определить, как получить высоту на блоке латекса выходных (не весь документ, а не code..but скорее блока от выпуск). В качестве примера того, что я пытаюсь сделать: я должен был иметь код латексаполучить высоту на блоке вывода латексной

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

Высота над блоком текст зависит от ряда вещей-шрифта, размера маржи, и, конечно же, что текст меняется, так как изменение любого из этих параметров изменяет количество дюймов, которое будет выводиться, но с форматированием по умолчанию его выход будет примерно на 2 дюйма выше.

Я надеюсь, что есть пакет, который делает это! Я ценю любые указатели в правильном направлении!

Заранее благодарен!

Георг Raba

+0

Не могли бы вы подробнее рассказать о причинах этого? Мне любопытно что для вас будет использовать :). – Pieter

ответ

8

Обычно, хитрость заключается в том, чтобы положить все вы хотите измерить коробку, а затем просто не набирать ящик, а измерять его:

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

Это не будет работать с \ newline. есть ли обходной путь для этого или другой подход? Заранее благодарим! georg – georg

+0

О, право. Сожалею. Для нескольких строк используйте '\ vbox' (вертикальное поле). –

+0

это работает отлично. Хотя, мне было интересно, где я могу узнать больше о том, что здесь происходит. Почему вам нужно \ in \ the \ height? danke im Voraus! – georg

7

Я думаю, что это будет работать:

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

Где ... ваше содержание вы хотите измерить. И вы можете использовать \somenamehere как высоту этого контента.


Пример:

\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} 

Выведет:

Значение = 6.8872pt


Примечание:

  • Значения длины сохраняются в виде точек, и 1 дюйм ≈ 72,27 пт
  • Это не требует каких-либо дополнительных пакетов.

Update:

Использование \hbox правильно рассчитать высоту другой среды размера, но это не будет работать с новой строкой :-(

Смежные вопросы