欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

水印效果 只有图片,文字不显示

程序员文章站 2022-06-17 10:39:23
...
在单位电脑上运行没有错,但是在家运行发现文字没有显示,只有图片。
//水印效果
header("content-type-:image/jpeg");
$im=imagecreatefromjpeg("images/xx.jpg");
$textcolor=imagecolorallocate($im,56,73,136);
$fnt="C:/WINDOWS/Fonts/SIMKAI.TTF";
$motto=iconv("gb2312","utf-8","长白山天池");
imagettftext($im,100,0,600,340,$textcolor,$fnt,$motto);
imagejpeg($im);
imagedestroy($im);
?>
请大侠帮忙,如果是PHP和GD库环境有问题的话,那应该如何检测和修改。。。

回复讨论(解决方案)

imagettftext($im,100,0, 600, 340,$textcolor,$fnt,$motto);
图片有那么大吗?也不检查一下

imagettftext($im,100,0,600,340,$textcolor,$fnt,$motto);
图片有那么大吗?也不检查一下

这个是我单位电脑上的,运行正常,另“600,340”,那个是x,y,的坐标。
我现在在考虑是不是环境有问题,但是不知从何入手,请各位高手再帮忙想想啊。

那还能有什么问题?
除非 SIMKAI.TTF 损坏了
否则不要报错吗?

那还能有什么问题?
除非 SIMKAI.TTF 损坏了
否则不要报错吗?

都检查了,这个也没有错,就是奇怪,图片还能正常显示,就是不出文字。

换个字体
改变一下起始坐标

600,340 可能越出了图片范围

换个字体
改变一下起始坐标

600,340 可能越出了图片范围

都试过了,我把字体也缩小了,坐标也调了,字体也换了,大小写也看了,实在没有办法,(在单位显示是正常的,在家不行只有图片。。)又不想重新安装PHP,所以想请大家帮忙出个注意。

那你知不是把程序文件存成了 utf-8 编码的了?

那你知不是把程序文件存成了 utf-8 编码的了?

默认gb2312 但转码时只认utf-8,所以又加个句
$motto=iconv("gb2312","utf-8","长白山天池");
小弟还是不清楚错在哪里啊,大哥这么热心让小弟十分感动啊。

$motto="长白山天池";
出来乱码就对了

$motto="长白山天池";
出来乱码就对了

恩,回到家再试试,先谢谢啊~

同,求解。 我也是这个问题。还请各路大神指教


$motto="长白山天池";
出来乱码就对了

恩,回到家再试试,先谢谢啊~

我知道了。原来是iconv转码的问题。 你的页面如果编码如果是utf-8的就不需要转码,如果是gb2312的就要转码。。重复的编码不能转,转就转没了

额。。。。我这才发现,这是一个陈年老帖...