学习之路,除了看,还有不停地练习,记录,希望在这个地方记录学习的点滴,同时提升一丁点自己的文字功底(表示打这些话的时候语序非常混乱。。。
直入正题,本次主要记录几个水印相关的功能,方法可能比较旧了。接触到新的再说吧:
文字水印
//打开图像
$src = "原始图像路径"; //选择图像
$info = getimagesize("$src"); //获取图像的基本信息,info[0]、info[1]:图像的宽高,info[2]:图像的类型
$type = image_type_to_extension($info[2],false); //获取图像的类型,将输出(jpeg、png等),false表示不保留类型前的".";
$fun = "imagecreatefrom{$type}"; //确认载入图像类型的函数;
$image = $fun($src); //通过url地址载入图像至内存中;
//操作图像
$font = "字体文件路径";
$fontColor = imagecolorallocatealpha("图像资源",R,G,B,透明度); //定义文字水印颜色;
$content = "水印内容";
imagettftext("图像资源","字体大小","旋转角度","x","y","字体颜色","字体文件");//生成水印,xy表示水印的偏移值
//输出并销毁内存中的图片
header("Content-type:".$info['mime']); //定义头部信息
$func = "image{$type}";
$func("图像资源"); //在浏览器中生成图片;
$func("图像资源","url"); //在指定路径生成图片;
imagedestroy("图像资源"); //销毁内存中的图片;
图片水印
//打开图片
$src = "";//选择图像
$info = getimagesize();//获取图像的基本信息,info[0]、info[1]:图像的宽高,info[2]:图像的类型
$type = image_type_to_extension($info[2],false);//获取图像的类型,将输出(jpeg、png等),false表示不保留类型前的".";
$fun = "imagecreatefrom{$type}";//确认载入图像类型的函数;
$image = $fun($src);//通过url地址载入图像至内存中;
//操作图片
$src2 = "水印图片路径";
$info2 = getimagesize('$src2');//获取图像的基本信息,info[0]、info[1]:图像的宽高,info[2]:图像的类型
$type2 = image_type_to_extension(info2[2],false);//获取图像的类型,将输出(jpeg、png等),false表示不保留类型前的".";
$funs = "imagecreatefrom{$type2}";//确认载入图像类型的函数;
$imageMark = $funs($src);//通过url地址载入图像至内存中;
imagecopymerge(resource $dst_im , resource $src_im , int $dst_x , int $dst_y , int $src_x , int $src_y , int $src_w , int $src_h , int $pct); //将 src_im 图像中坐标从 src_x,src_y 开始,宽度为 src_w,高度为 src_h 的一部分拷贝到 dst_im 图像中坐标为 dst_x 和 dst_y 的位置上。两图像将根据 pct 来决定合并程度,其值范围从 0 到 100。当 pct = 0 时,实际上什么也没做,当为 100 时对于调色板图像本函数和 imagecopy() 完全一样,它对真彩色图像实现了 alpha 透明
//输出并销毁内存中的图片
header("Content-type:".$info['mime']); //定义头部信息
$func = "image{$type}";
$func("图像资源"); //在浏览器中生成图片;
$func("图像资源","url"); //在指定路径生成图片;
imagedestroy("图像资源"); //销毁内存中的图片;
imagedestroy("水印图片资源"); //销毁内存中的水印图片;
压缩图片
//打开图片
$src = "";//选择图像
$info = getimagesize();//获取图像的基本信息,info[0]、info[1]:图像的宽高,info[2]:图像的类型
$type = image_type_to_extension($info[2],false);//获取图像的类型,将输出(jpeg、png等),false表示不保留类型前的".";
$fun = "imagecreatefrom{$type}";//确认载入图像类型的函数;
$image = $fun($src);//通过url地址载入图像至内存中;
//操作图片
$image_thumb = imagecreatetruecolor(w,h); //在内存中生成一张真彩图片;
imagecopyresampled (resource $dst_image , resource $src_image , int $dst_x , int $dst_y , int $src_x , int $src_y , int $dst_w , int $dst_h , int $src_w , int $src_h); //进行压缩操作,dst为目标图像($image_thumb),src为源图像($image);
//输出并销毁内存中的图片
header("Content-type:".$info['mime']); //定义头部信息
$func = "image{$type}";
$func("图像资源"); //在浏览器中生成图片,此处应为$image_thumb;
$func("图像资源","url"); //在指定路径生成图片,此处应为$image_thumb;
imagedestroy("源图像资源"); //销毁内存中的图片;
imagedestroy("压缩图像资源"); //销毁内存中的图片;