我不知道GD库中是否还有其他功能,但我尝试通过他们的文档进行研究。 无论如何,似乎imagefttext()函数不支持html,只是纯文本。
$text = '<strong>Your Price:</strong><br />$'.$promo_data['selling_price'];
@imagefttext($image, 12, 0, 163, 30, $color, '../images/gdprac/LUCIDASANSSTD.OTF', $text);
它只输出html标签,不会将其翻译为HTML。 有没有其他功能允许HTML或无论如何使用此功能绕过它?
谢谢!
答案 0 :(得分:2)
gd函数与HTML无关。
如果要将文本设为粗体或斜体,请提供相应的字体文件作为参数,例如:
imagefttext($image, ..., '../images/gdprac/LUCIDASANSSTD-Bold.OTF', $text);
如果你想布局文本(将粗体与普通文字组合,写入“行”),你必须自己手动计算所有文本输出的位置:imageftbbox
将让你知道文本将占用多少空间,你将使用这些信息来计算下一篇文章的去向。
答案 1 :(得分:1)
imagefttext只能将纯文本绘制到图像中,不支持HTM。
如果你要将BOLD文字输出到图像,你要么使用粗体字,要么尝试这个技巧:
<?php
function drawboldtext($image, $size, $angle, $x_cord, $y_cord, $r, $g, $b, $fontfile, $text)
{
$color = ImageColorAllocate($image, $r, $g, $b);
$_x = array(1, 0, 1, 0, -1, -1, 1, 0, -1);
$_y = array(0, -1, -1, 0, 0, -1, 1, 1, 1);
for($n=0;$n<=8;$n++)
{
ImageTTFText($image, $size, $angle, $x_cord+$_x[$n], $y_cord+$_y[$n], $color, $fontfile, $text);
}
}
?>