
Дан следующий код:
\documentclass{article}
\begin{document}
\setbox0=\hbox{hello \fbox{other [.] text} world.}
\box0
\end{document}
Я могу использовать zref-savepos, чтобы определить местоположение точки внутри рамки:
\documentclass{article}
\usepackage{zref-savepos}
\begin{document}
\setbox0=\hbox{\zsavepos{leftmostpoint}hello \fbox{other [.\zsavepos{dotpoint}] text} world.}
\box0
\the\dimexpr\zposx{dotpoint}sp-\zposx{leftmostpoint}sp\relax
\end{document}
Но:
- Требуется, чтобы коробка была отправлена
- Нужен еще один проход компиляции.
Вопрос:есть ли способ вычислить местоположение точки в поле без отправки?
\wd
Я знаю , что есть \ht
и \dp
для коробок, но не более того.
Мотивация: Я хочу реализовать что-то похожее на tikzmark для Asymptote (Как сделать стрелку из частей формулы в Asymptote? (или: измерить ширину метки, получить якорь вокруг метки)). Для этого Asymptote использует двунаправленную трубу для измерения ширины, высоты и глубины коробок, но мне также нужна пользовательская привязка внутри коробки.