介绍
利用PHP怎么实现一个随机生成水印图片功能?相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。
class GenerateRandomImage {/* *,才能@var integer 图片宽度,*/public 才能;imgWidth 美元;=,272;/* *,才能@var integer 图片高度,*/public 才能;imgHeight 美元;=,162;/* *,才能@var 根据类型不同来生成不同的背景颜色,目前留个类型分别为蓝色,紫色,黄色,绿色,灰色,土黄色,*/public 才能;type 美元;=,& # 39;& # 39;;/* *,才能@var 图片上要显示的文字,*/public 才能;text 美元;=,& # 39;& # 39;;/* *,才能@var integer 图片上文字的字体大小,*/public 才能;fontSize 美元;=,16; public 才能;function  __construct(类型、美元,美元文本) {才能 ,,,这个→美元type =,美元类型; ,,,这个→美元text =,美元文本; ,,} ,/* * ,,*,创建生成随机图片 ,,*,@author bignerd ,,*,@since 2017 - 03 - 21 - t14:49:41 + 0800 ,,*/public 才能;function  createImg () {才能 ,,,/* *,@var 创建一个指定图片大小的空调色板 ,,,image 美元;=,imagecreate ($ this→imgWidth,, $ this→imgHeight); rgb 美元,,,,,=,$ this→getBackground ($ this→类型); ,,,/* *,@var 为图片创建一个背景色,*/,,,backgroundColor 美元;=,imagecolorallocate(形象,美元,美元rgb(& # 39; " # 39;],,美元rgb(& # 39;舌鳎# 39;],,美元rgb (& # 39; b # 39;]); ,,,/* *,@var 创建文字白色字体,*/,,,textColor 美元;=,imagecolorallocate(美元的形象,,255,,255,,255); ,,,/* *,@var 字体文件路径,*/,,,font 美元;=,$ _SERVER [& # 39; document_root # 39;] # 39;公司/公共/字体/simhei.ttf& # 39;; ,,,x 美元;=,18;//文字起始位置x坐标 ,,,y 美元;=,50;//文字起始位置y坐标 ,,,/* *,文字写入图片,*/,,,angle 美元;=,0;//角度0 值,,,imagettftext(形象,美元,美元这→字形大小,,角度,美元,$ x, y,美元,输入textColor美元,字体,美元,美元这→文本); ,,,/* *,@var 水印图片路径,* */,,,waterImgPath 美元;=,$ this→randWaterImage (); ,,,/* *,@var 获取图片信息,返回值waterInfo美元[2],为图片类型常量,*/waterInfo 美元,,,,,=,getimagesize ($ waterImgPath); ,,,/* *,@var 将图片类型常量转换为真正的类型,如png */waterType 美元,,,,,=,image_type_to_extension (waterInfo美元[2],,假);//获取文件类型 ,,,createImageFunc 美元;=,& # 39;imagecreatefrom& # 39; waterType美元; ,,,/* *,@var 创建一个水印图片的副本,createImageFunc 美元;为根据图片类型来动态生成预调用的创建图片函数*/,,,mask 美元;=,createImageFunc美元($ waterImgPath); ,,,posX 美元;=,$ this→imgWidth 作用;美元waterInfo[0];//水印图片,在目标图片中的位置的x坐标 ,,,posY 美元;=,$ this→imgHeight 作用;美元waterInfo[1];//水印图片,在目标图片中的位置的y坐标 ,,,/* *,http请求响应类型设置为,图像/png 以便直接显示为图片,*/,,,头(“内容类型:图像/png"); ,,,/* *,水印图片复制到创建的image */,,,imagecopy(形象,美元,美元的面具,,posX美元,美元的诗句,,0,0),美元waterInfo[0],,美元waterInfo [1]); ,,,imagepng图像($);//输入图片到浏览器或者文件 ,,,imagedestroy图像($);//销毁图片 ,,}, ,/* * ,,*,图片背景颜色的rgb值 ,,*,@author bignerd ,,*,@since 2017 - 03 - 21 - t14:50:16 + 0800 ,,*/public 才能;function  getBackground () {才能 ,,,background 美元;=,( ,,,,,& # 39;1 & # 39;=祝辞(& # 39;" # 39;=祝辞0,,& # 39;舌鳎# 39;=祝辞;160年,& # 39;b # 39;=在233年), ,,,,,& # 39;2 & # 39;=祝辞(& # 39;" # 39;=祝辞;198年,& # 39;舌鳎# 39;=祝辞0,,& # 39;b # 39;=在110年), ,,,,,& # 39;3 & # 39;=祝辞(& # 39;" # 39;=祝辞;237年,& # 39;舌鳎# 39;=祝辞;109年,& # 39;b # 39;=祝辞0], ,,,,,& # 39;4 & # 39;=祝辞(& # 39;" # 39;=在33岁,& # 39;舌鳎# 39;=祝辞;148年,& # 39;b # 39;=在75年), ,,,,,& # 39;5 & # 39;=祝辞(& # 39;" # 39;=祝辞;63年,& # 39;舌鳎# 39;=在58岁,& # 39;b # 39;=祝辞57),,,,,,, ,,,,,& # 39;6 & # 39;=祝辞(& # 39;" # 39;=祝辞;202年,& # 39;舌鳎# 39;=祝辞;162年,& # 39;b # 39;=在101年), ,,,); ,,,return 背景美元($ this→类型); ,,} ,/* * ,,*,随机水印图片路径 ,,*,@author bignerd null null null null null null null null null null null null null null null利用PHP怎么实现一个随机生成水印图片功能