Экспорт ширины и высоты изображения, созданного в предварительном просмотре, в текстовый файл

Экспорт ширины и высоты изображения, созданного в предварительном просмотре, в текстовый файл

Я использую previewпакет для генерации некоторых изображений из equationокружения. Мне нужна ширина и высота каждого изображения. Я думаю, что previewпакет делает какую-то черную магию, и в какой-то момент эти значения должны быть известны (?). Возможно ли сохранить их последовательно в текстовом файле?

\documentclass{article}
\usepackage[active,tightpage]{preview}
\PreviewEnvironment{equation}
\begin{document}
\begin{equation}
  x^2 = 2
\end{equation}
\begin{equation}
  \int_0^x \sin t\, dt = 0
\end{equation}
\end{document}

решение1

Покопавшись в preview.styдокументированном коде, я обнаружил, что добавление некоторого материала в \pr@ship@endхук — это способ сделать это (то, что я хочу, почти то же самое, что auctexделает опция). Размеры, которые я искал, соответствуют \pr@box.

Так как мне нужны размеры в сантиметрах, я использовал макрос преобразования, заданный ниже.в другом ответе.

\documentclass{article}
\usepackage{amsmath}
\usepackage[active,tightpage]{preview}
\PreviewEnvironment{equation*}
\makeatletter
% Conversion utility (https://tex.stackexchange.com/a/37317/8425)
\begingroup
  \catcode `P=12  % digits and punct. catcode
  \catcode `T=12  % digits and punct. catcode
  \lowercase{%
  \def\x{\def\rem@pt##1.##2PT{##1\ifnum##2>\z@.##2\fi}}}
     \expandafter\endgroup\x%
\def\strip@pt{\expandafter\rem@pt\the}
\def\convertto#1#2{\strip@pt\dimexpr #2*65536/\number\dimexpr 1#1\relax\relax}
% Answer to the question
\newwrite\file
\immediate\openout\file=snippet-list.txt
\g@addto@macro\pr@ship@end{%
  \immediate\write\file{%
    \convertto{cm}{\the\dimexpr\ht\pr@box+\dp\pr@box\relax}
    \convertto{cm}{\the\wd\pr@box}}}
\begin{document}
Test
\begin{equation*}
  x^2 = 2
\end{equation*}
Test
\begin{equation*}
  \int x^2\, dx = \frac{x^3}{2}
\end{equation*}
\closeout\file
\end{document}

Я получаю snippet-list.txtс

0.42175 12.12537
0.86165 12.12537

Связанный контент