Home > Article > Backend Development > 图片水印输出不能正常显示问题!
$img = "img/iphone.jpg";$info = getimagesize($img);//获取图片信息$type = image_type_to_extension($info[2],false);//图片后缀$fun = "imagecreatefrom{$type}";//确定后缀选择相应函数$image = $fun($img);//利用函数接入图片地址$img_mark = "img/ulogo.png";//设置水印路径$info_mark = getimagesize($img_mark);//获取水印图片基本信息$type_mark = image_type_to_extension($info_mark[2],false);//获取图片类型$fun_mark = "imagecreatefrom{$type_mark}";//$water = $fun_mark($img_mark);imagecopymerge($image, $water, 20, 30, 0, 0, $info_mark[0],$info_mark[1],30);//合并图片imagedestroy($water);header('Content-type:'.$info['mime']);//告诉浏览器是图片输出$func = "image{$type}";//选择相应函数调用$func($image);//浏览器输出图片$func($image,"newimg.".$type);//保存图片imagedestroy($image);//销毁图片
不能显示是什么意思?一个叉?
去掉程序文件的 BOM 头和多余的空格、空行
不能显示是什么意思?一个叉?
去掉程序文件的 BOM 头和多余的空格、空行
BOM 是若干个字符(utf-8是3个),但他并不属于图片的内容
不是图片的内容 加上 图片的内容,结果显然就不是图片了
BOM 是若干个字符(utf-8是3个),但他并不属于图片的内容
不是图片的内容 加上 图片的内容,结果显然就不是图片了
有时页面中又没有BOM出现,有时又会出现真奇怪~~~难道是工具问题?
BOM 头是你偏好 所谓的国际化 造成的
其实 BOM 不仅会影响图片的输出、文件的下载,还会影响页面的布局和 json 数据的解码
如果你一定要用 utf-8 编码保存文件,那么就一定要养成 无BOM 的习惯
其实在程序中很少有中文字符串常量的,所以并不需要保存为 utf-8 的