kniferpg 2017-03-10 07:45 采纳率: 50%
浏览 8888

php使用imagettftext将文字打印在图片上不显示

  ob_clean();
header("content-type:image/png");
//载入图片路径
$bg = imagecreatefrompng('backgroud.png');
//获取图片大小
$img_info = getimagesize('backgroud.png');
$img_w = $img_info[0];
$img_h = $img_info[1];

$im = imagecreatetruecolor($img_w, $img_h);

imagecopy($im,$bg,0,0,0,0,$img_w,$img_h);
imagedestroy($bg);
$black = imagecolorallocate($im, 0, 0, 0);
$text = '你阿妈但减价益你阿爸!';
$font = 'msyh.ttf';



imagettftext($im, 74, 0, 485, 285, $black, $font, $text);



imagejpeg($im);
imagedestroy($im);

可以显示图片,但是图片上没有我要求的内容。
使用imagestring可以正常显示英文。

再测试

 ob_clean();
$im = imagecreatetruecolor(400, 400); //创建400 30像素大小的画布

$white = imagecolorallocate($im, 255, 255, 255);
$grey = imagecolorallocate($im, 128, 128, 128);
$black = imagecolorallocate($im, 0, 0, 0);

imagefilledrectangle($im, 0, 0, 400, 400, $white); //输出一个使用白色填充的矩形作为背景

//如果有中文输出,需要将其转码,转换为UTF-8的字符串才可以直接传递
//$text = iconv("GB2312", "UTF-8", "回忆经典");
$text = "5555555555555555555555";

//设定字体,将系统中与simsun.ttc对应的字体复制到当前目录下
$font = 'msyh.ttf';

imagettftext($im, 20, 0, 12, 21, $grey, $font, $text); //输出一个灰色的字符串作为阴影
imagettftext($im, 20, 0, 10, 20, $black, $font, $text); //在阴影上输出一个黑色的字符串

header("Content-type: image/png");
imagepng($im);

imagedestroy($im);

文字依然没出现

大神们,求救

  • 写回答

5条回答 默认 最新

  • kniferpg 2017-03-10 08:24
    关注

    问题找到了,主要是字体文件,不能为:'**.ttf'建一个文件夹就解决了

    评论

报告相同问题?

悬赏问题

  • ¥15 C++ 句柄后台鼠标拖动如何实现
  • ¥15 有人会SIRIUS 5.8.0这个软件吗
  • ¥30 comsol仿真等离激元
  • ¥15 静电纺丝煅烧后如何得到柔性纤维
  • ¥15 (标签-react native|关键词-镜像源)
  • ¥100 照片生成3D人脸视频
  • ¥15 伪装视频时长问题修改MP4的时长问题,
  • ¥15 JETSON NANO
  • ¥15 VS开发qt时如何在paintgl函数中用pushbutton控制切换纹理
  • ¥20 关于 openpyxl 处理excel文件地问题