如果使用OCR或HTML转换为PDF,两者的行为不同,但输出相似,这并不重要.同样,在反向工作时也存在大致相同的问题.据我所知,从样例中,PDFMiner被硬编码为一个固定的比例进行转换,但大多数文档不是以这种方式固定的.
如果源不是以 scanner 像素(像素)等点定义的,则需要将它们四舍五入为PDF单位,通常可以将其描述为最接近的点.大小
如果没有要测试的PDF,这里是对该区域的不同解释,因此顶线被视为四舍五入为16点.(实际标量单位=66.6984),绿色和蓝色线条为17点.(实际标量单位=70.8671)和17点.(不变)
因此,为了在转换中帮助识别,源单位应首先调整为最近的1/2点(最接近的10 TWIPS)
回答
虽然不是确切的原因(没有要测试的输入和输出),但它是常见的.
报告的磅大小是指示性的,通常由读者(16和17)四舍五入,因为PDF不使用点,而是可变标量单位(这里是66.6984和70.8671).
因为不存在行来自同一来源的概念,所以每一连续的行可以是不同的高度,甚至可以包含高度波动的文本(对于数学公式来说是可取的).
为了控制输出高度,理想情况下,它们应该按行定义为源中的"点高度".
Pdfminer should convert a 10 pt object to a 13.333 px equivalence and we see from its own simple samples a 24 Page units PDF font is output as a rounded off 27px HTML text (by my calculation it should have been 32px ??), but both are only based on the assumption no other scalars are involved.