使用php GD库输出带有下划线文本的图像

发布于 2024-07-16 03:56:58 字数 46 浏览 5 评论 0原文

使用 GD 或任何其他库显示带下划线的文本并将结果输出为图像的最佳方法是什么?

What is the best way to display underlined text and output the result as image with GD or any other library?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

独自←快乐 2024-07-23 03:56:58

您可以尝试使用 Unicode 下划线组合字符 U+0332

<?php
// Set the content-type
header('Content-type: image/png');

// Create the image
$im = imagecreatetruecolor(400, 30);

// Create some colors
$white = imagecolorallocate($im, 255, 255, 255);
$black = imagecolorallocate($im, 0, 0, 0);
imagefilledrectangle($im, 0, 0, 399, 29, $white);

// The text to draw
$text = "̲U̲d̲e̲r̲l̲i̲n̲e";
// Replace path by your own font path
$font = 'arial.ttf';


// Add the text
imagettftext($im, 20, 0, 10, 20, $black, $font, $text);

// Using imagepng() results in clearer text compared with imagejpeg()
imagepng($im);
imagedestroy($im);
?>

You can try using the Unicode underline combining character U+0332.

<?php
// Set the content-type
header('Content-type: image/png');

// Create the image
$im = imagecreatetruecolor(400, 30);

// Create some colors
$white = imagecolorallocate($im, 255, 255, 255);
$black = imagecolorallocate($im, 0, 0, 0);
imagefilledrectangle($im, 0, 0, 399, 29, $white);

// The text to draw
$text = "̲U̲d̲e̲r̲l̲i̲n̲e";
// Replace path by your own font path
$font = 'arial.ttf';


// Add the text
imagettftext($im, 20, 0, 10, 20, $black, $font, $text);

// Using imagepng() results in clearer text compared with imagejpeg()
imagepng($im);
imagedestroy($im);
?>
岁月染过的梦 2024-07-23 03:56:58

有很多免费的 PHP 验证码,其中包含大量自定义功能,下载一个并查看幕后到底发生了什么。 另请查看此链接

HTH

There are lots of FREE PHP CAPTCHA out there that come with a lot of customization, download one and see what exactly happens behind the scene. Also have a look at this link

HTH

究竟谁懂我的在乎 2024-07-23 03:56:58

我正在用这个...

    $font = imageloadfont($font_file);  
$font_width = ImageFontWidth($font);
$font_height = ImageFontHeight($font);
    $str_width = strlen($text)*$font_width;
    ImageLine($image, $left, $top+$font_height, $left+$str_width,  $top+$font_height, $color);

I am using this...

    $font = imageloadfont($font_file);  
$font_width = ImageFontWidth($font);
$font_height = ImageFontHeight($font);
    $str_width = strlen($text)*$font_width;
    ImageLine($image, $left, $top+$font_height, $left+$str_width,  $top+$font_height, $color);
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文