数学公式在 PDF 中如何表示?

数学公式在 PDF 中如何表示?

如果我将 .tex 文件编译为 PDF,PDF 将如何编码数学公式(例如下面的积分)?它是位图吗?或者它是如何编码的?我如何从 PDF 文件中提取公式? 在此处输入图片描述

更多背景信息:我的目标是训练一个神经网络,当我给它一个数学符号(如上面的积分)作为输入时,它输出乳胶代码。第一步是找出符号在 PDF 文件中的表示方式,这样我就可以提取这部分并将其用作训练数据的标签。

谢谢

答案1

本质上,在 pdf 中,每个字母(或字母序列)都通过坐标来定位,因此即使是普通单词也可能被编码为单个字母,并且定位为“看起来”像文本,从而考虑到字母间的字距等。

数学也没什么不同:字符只是位于页面上 TeX 确定位置的普通字体字符。

PostScript 使用与 PDF 相同的渲染模型,但更容易用眼睛阅读,以 Henri 为例,使用 latex 和 dvips

\documentclass{article}

\pagestyle{empty}

\begin{document}
$\int_0^2 x^2 dx$
\end{document}

生成以下 PostScript

%%Page: 1 1
TeXDict begin 1 0 bop 639 457 a Fc(R)695 477 y Fb(2)678
553 y(0)746 524 y Fa(x)793 494 y Fb(2)830 524 y Fa(dx)p
eop end
%%Trailer

您可以在其中看到结构:字符串被编码为例如(dx)dx,但除了这 2 个字母的示例之外,所有其他字符运行都是单个字符,每个字母的字体和坐标都单独指定。

答案2

我认为(我希望你能理解),你可以使用一种特殊的工具MaxTract。它可以在链接中找到http://www.cs.bham.ac.uk/research/groupings/reasoning/sdag/maxtract.php

Maxtract 是一种将 PDF 转换为 LaTeX、MathML 和文本等格式的工具。 在此处输入图片描述

附录:这个程序PDF 到 LaTeX 转换器也有用嗎?

在此处输入图片描述

答案3

如果您使用 Unicode 数学字体,那么生成的 PDF 中的所有字形都只是 Unicode 符号。

\documentclass{article}
\pagestyle{empty}
\usepackage{unicode-math}
\begin{document}
$\int_0^2 x^2 dx$
\end{document}
$ pdftotext test.pdf -
2

相关内容