【问题标题】:Point of origin for text :imagettftext文本的原点:imagettftext
【发布时间】:2012-06-27 13:48:01
【问题描述】:

我正在使用 imagettftext 函数在图像上写入文本,但问题是当我将 x,y 位置设置为 0,0 时,它确实在图像的左上角写入文本。

有什么办法可以让我的原点在左上角吗??

【问题讨论】:

    标签: php imagettftext


    【解决方案1】:

    来自 PHP 手册:

    x 和 y 给出的坐标将定义第一个字符的基点(大致 字符的左下角)。这与 imagestring() 不同,其中 x 和 y 定义第一个字符的左上角。例如,“左上角”为 0, 0。

    因此,如果您希望原点位于左上角,您可以使用imagestring(),或者您可以将字母高度与imagettftext() 函数的y 点相加。

    要获取字母的高度可以使用imagettfbbox()函数:

    $bbox = imagettfbbox ( $size , $angle , $fontfile , $text );
    $y_offset = abs($bbox[7] - $bbox[1]);
    imagettftext ( $image , $size , $angle , $x , $y + $y_offset , $color , $fontfile , $text );
    

    【讨论】:

      猜你喜欢
      • 2014-12-13
      • 2012-04-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2010-11-25
      • 1970-01-01
      • 2011-01-27
      • 1970-01-01
      相关资源
      最近更新 更多