【问题标题】:HPDF units for text width and height文本宽度和高度的 HPDF 单位
【发布时间】:2017-07-08 08:02:12
【问题描述】:

也许这只是我的头晕,但似乎没有关于 HPDF 的 HPDF_Font_TextWidth() 函数的度量单位的文档,我也无法弄清楚。

对于 7 个字符的特定文本,我得到的数字约为 3000。渲染的文本似乎约为 80 像素,这也是从 HPDF_Page_TextWidth() 返回的。

HPDF_Font_TextWidth() 不知道字体大小,所以它必须使用其他单位。这是什么?

这与HPDF_Font_GetBBox() 返回的单位相同吗?

我实际上是在尝试将文本放在矩形的中心,并且需要以矩形为单位的文本的宽度和高度。

【问题讨论】:

    标签: pdf-generation units-of-measurement


    【解决方案1】:

    这是一篇旧帖子,但我偶然发现了它,因为我遇到了同样的问题。据我所知,查看HPDF_Font_GetUnicodeWidth()的来源,它返回的单位需要乘以字体大小,然后除以1000得到points的宽度,这就是PDF的其余部分坐标系使用。

    width = (HPDF_Font_TextWidth() * font_size) / 1000.0;
    

    【讨论】:

      【解决方案2】:

      以下所有返回EM单位,必须除以1000再乘以点大小才能得到点,如上所述:

      单位是相对于基线的。 Descender、BBox left & bottom 为负数。大写字母 Height 和 assender 之间的区域用于变音符号。

      要计算一段文本的高度,如果您的文本有大写变音符号,则计算大写高度减去下降线或上升线减去下降线。

      关键字:Haru PDF

      【讨论】:

        猜你喜欢
        • 2011-12-05
        • 2014-12-06
        • 2011-12-22
        • 1970-01-01
        • 1970-01-01
        • 2018-06-01
        • 1970-01-01
        • 2014-09-19
        • 2014-09-19
        相关资源
        最近更新 更多