【问题标题】:PHP GD and True Type FontPHP GD 和 True Type 字体
【发布时间】:2013-07-27 04:03:57
【问题描述】:

我对 TTF 和 PHP GD 2.x 有一个奇怪的问题。

我在顶部位置 100 处有一个大小为 45px 的 TTF。文本的顶部与一条线完美对齐(在图像中)。

但是如果我改变字体的大小,文本不再与行对齐。

在大小为 20 像素时,我需要将文本的顶部值减去 5,如果字体大小为 300 像素,我需要在顶部值上添加 56 以获得完美对齐。

更糟糕的是,如果我更改字体(另一个 TTF),它是相同的,但数字不同。

我是不是错过了什么。为什么我需要根据文本的大小更改文本的顶部值以及为什么我为一种字体所拥有的数字与另一种不同?????

如果一切正常的话。我怎样才能得到一个公式来总是让文本对齐。

这里有一些数字....

Font 1 . size 20 = top 95, size 45 = top 100, size 300 = top 156.
Font 2 . size 20 = top 91, size 193 = top 100, size 300 = top 105. 

我数学不太好....伤心

谢谢

比尔

【问题讨论】:

    标签: php gd truetype


    【解决方案1】:

    您最好使用 Imagick,它可以让您查询 font's metrics。您可能需要字体的 x-height 或 cap 高度值,这是您无法从 GD 获得的。

    获得这些值后,您就可以正确计算对齐所有内容所需的垂直偏移量。

    【讨论】:

    • 哇,更改解决了我的问题,Image Magick 更容易了。
    猜你喜欢
    • 1970-01-01
    • 2011-11-09
    • 2010-10-08
    • 2016-03-09
    • 2017-08-01
    • 2017-05-09
    • 2012-04-19
    • 1970-01-01
    • 2014-04-13
    相关资源
    最近更新 更多