php 图片输出,【PHP的图像处理】文字水印、图片水印、压缩图像等实例

一创建图片资源

imagecreatetruecolor(width,height);imagecreatefromgif(图片名称);imagecreatefrompng(图片名称);imagecreatefromjpeg(图片名称);画出各种图像 imagegif(图片资源,保存路径);imagepng()imagejpeg();

二获取图片属性

imagesx(res//宽度imagesy(res//高度getimagesize(文件路径)返回一个具有四个单元的数组。索引 0 包含图像宽度的像素值,索引 1 包含图像高度的像素值。索引 2 是图像类型的标记:1 = GIF,2 = JPG,3 = PNG,4 = SWF,5 = PSD,6 = BMP,7 = TIFF(intel byte order),8 = TIFF(motorola byte order),9 = JPC,10 = JP2,11 = JPX,12 = JB2,13 = SWC,14 = IFF,15 = WBMP,16 = XBM。这些标记与 PHP 4.3.0 新加的 IMAGETYPE 常量对应。索引 3 是文本字符串,内容为“height="yyy" width="xxx"”,可直接用于 IMG 标记。销毁图像资源imagedestroy(图片资源);

三透明处理

PNG、jpeg透明色都正常,只有gif不正常imagecolortransparent(resource image [,int color])//将某个颜色设置成透明色imagecolorstotal()imagecolorforindex();

四图片的裁剪

imagecopyresized()imagecopyresampled();

五加水印(文字、图片)

字符串编码转换string iconv ( string $in_charset , string $out_charset , string $str )

六图片旋转

imagerotate();//制定角度的图片翻转

七图片的翻转

沿X轴 沿Y轴翻转

八锐化

imagecolorsforindex()imagecolorat()在图片上画图形 $img=imagecreatefromgif("./images/map.gif");

以下PHP的图像处理实例分享给大家供大家参考:

1、添加文字水印

//1、打开图片资源

$src="./images/logo.png";

$info=getimagesize($src);//获取图片信息

$type=image_type_to_extension($info[2],false);//转化图片类型

//var_dump($info);

$fun="imagecreatefrom{$type}";//拼接成为imagecreatefromjpeg()方法

$image=$fun($src);//新建GD图片资源

//操作图片

$font="./material/segoepr.ttf";

$content="@SuperTory";

$color=imagecolorallocate($image,255,255,255);

imagettftext($image,10,0,0,$info[1]-5,$color,$font,$content);//图片上写文字

//输出图片

header("content-type:".$info['mime']);//$imfo['mine']='image/jpeg'

$output="image{$type}";//拼接成为imagejpeg()方法

$output($image);//输出到页面

$output($image,'./material/watermarked.'.$type);//输出到本地路径

//销毁图片内存资源

imagedestroy($image);

2、压缩图像

//打开图像

$src="./images/logo.png";

$info=getimagesize($src);

$type=image_type_to_extension($info[2],false);

$create="imagecreatefrom".$type;

$image=$create($src);

//压缩

$tinyImg=imagecreatetruecolor(100,100); //新建压缩后的图像资源

//将原图映射到压缩后的图像资源上

imagecopyresampled($tinyImg,$image,0,0,0,0,100,100,$info[0],$info[1]);

header("content-type:".$info['mime']);

$output="image{$type}";

//$output($image);

$output($tinyImg);

//销毁

imagedestroy($image);

imagedestroy($tinyImg);

3、添加水印图片

//获取原图片

$src="./images/logo.png";

$info=getimagesize($src);

$type=image_type_to_extension($info[2],false);

$create="imagecreatefrom".$type;

$image=$create($src);

//获取水印图片资源

$markSrc="./material/logo.png";

$markInfo=getimagesize($markSrc);

$markType=image_type_to_extension($markInfo[2],false);

$create="imagecreatefrom".$markType;

$markImage=$create($markSrc);

$tinyImg=imagecreatetruecolor(100,100);

imagecopyresampled($tinyImg,$markImage,0,0,0,0,

100,100,$markInfo[0],$markInfo[1]);

imagecopymerge($image,$tinyImg,$info[0]-100,$info[1]-100,

0,0,100,100,100);

//合并图片:(原图,水印图,原图x位置,原图y位置,水印x起点,水印y起点,水印x终点,水印y终点,不透明度)

header("content-type:".$info['mime']);

$output="image{$type}";

$output($image);

imagedestroy($image);

imagedestroy($markImage);

顶一下

(0)

100%订阅

回复

踩一下

(0)

100%

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值