Php 使用GD库创建带有动态文本的图像
我正在使用GD库创建一个文本水印。问题是,当我给他们一个简短的文本,它会生成一个正常的图像,但当文本较大时,图像会变小。请告诉我如何根据文本创建图像,使其非常适合。这是我到目前为止使用的代码:Php 使用GD库创建带有动态文本的图像,php,image-processing,gd,Php,Image Processing,Gd,我正在使用GD库创建一个文本水印。问题是,当我给他们一个简短的文本,它会生成一个正常的图像,但当文本较大时,图像会变小。请告诉我如何根据文本创建图像,使其非常适合。这是我到目前为止使用的代码: if(isset($_GET['text']) && !empty($_GET['text']) ){ $text = $_GET['text']; $font = './NOTTB___.TTF'; $fontsize =
if(isset($_GET['text']) && !empty($_GET['text']) ){
$text = $_GET['text'];
$font = './NOTTB___.TTF';
$fontsize = 20;
$bbox = imageftbbox($fontsize, 0, $font, $text);
$width = $bbox[2] - $bbox[6];
$height = $bbox[3] - $bbox[7];
$my_img = imagecreate( $width, $height );
$background = imagecolorallocate( $my_img, 0xff,0xff,0xff );
$text_colour = imagecolorallocate( $my_img, 0x00,0x00,0x00 );
imagecolortransparent($my_img, $background);
//imagettftext($my_img, $fontsize, 0, 30, 25, $text_colour, $font, $text);
imagefttext($my_img,$fontsize,0,-$bbox[6], -$bbox[7],$text_colour,$font,$text);
header( "Content-type: image/png" );
imagepng( $my_img );
imagecolordeallocate( $text_colour );
imagecolordeallocate( $background );
imagedestroy( $my_img );
}
我认为你的浏览器只是在缩小图像以适应你的窗口,你的代码没有问题。你能链接到两个显示这两种情况的示例图像吗?sammitch我如何与你分享示例以便你了解我的问题是的,你是对的cmorrissey。现在我从该图像中删除了宽度标记,它工作正常。谢谢