主要内容:
图像复制(水印)
图像半透明复制
图像按比例复制(缩略图)
imagecopy函数—拷贝画布中的一部分,复制到另一块画布上,但没有比例缩放功能,只能原模原样复制
bool imagecopy ( resource $dst_im ,resource $src_im , int $dst_x , int $dst_y , int $src_x , int $src_y , int$src_w , int $src_h )
参数$dst_im:目标画布
参数$src_im:复制源画布
参数$dst_x ,dst_y:目标画布开始点
参数$src_x ,$src_y:源画布开始位置
参数$src_w:源画布切取宽度
参数$src_h:源画布切取高度
<?php /**** bool imagecopy ( resource $dst_im , resource $src_im , int $dst_x , int $dst_y , int $src_x , int $src_y , int $src_w , int $src_h ) ****/ $width = 300; $height = 200; /*创建大图*/ $big = imagecreatetruecolor($width*2+20, $height); /*创建小图*/ $small = imagecreatefrompng("./1.png"); /*复制小图*/ imagecopy($big, $small, 0, 0, 0, 0, 300, 200); imagecopy($big, $small, 320, 0, 0, 0, 300, 200); /*输出图像*/ header("content-type:image/jpeg"); imagejpeg($big); /*销毁图像资源*/ imagedestroy($big); imagedestroy($small); ?> |
复制的图像,能否小一点呢,带一些透明效果?
imagecopyresampled —复制图片,并允许调整大小,可以做缩略图
bool 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 )
<?php $sw = 720;//原始图像宽度 $sh = 1280;//原始图像高度 $dw = (int)$sw/2;//缩略宽度 $dh = (int)$sh/2;//缩略高度 /*创建缩略图图像*/ $dst = imagecreatetruecolor($dw, $dh); /*读取原始图*/ $src=\‘#\‘" /2.jpg"); /*复制图像*/ imagecopyresampled($dst, $src, 0, 0, 0, 0, $dw, $dh, $sw, $sh); /*输出图像*/ imagejpeg($dst,‘./small.jpeg‘); /*销毁图像*/ imagedestroy($dst); imagedestroy($src); ?> |
imagecopymerge —透明复制
bool 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 )
两图像将根据 pct 来决定合并程度,其值范围从 0 到 100。当 pct = 0 时,实际上什么也没做,当为 100 时对于调色板图像本函数和imagecopy() 完全一样,它对真彩色图像实现了 alpha 透明。
<?php /*创建缩略图图像*/ $dst = imagecreatefromjpeg(‘./2.jpg‘); /*读取原始图*/ $src=\‘#\‘" /small.jpg"); /*复制图像*/ //imagecopymerge(dst_im, src_im, dst_x, dst_y, src_x, src_y, src_w, src_h, pct) imagecopymerge($dst, $src, 500, 900, 0, 0, 300, 500,90); /*输出图像*/ header("content-type:image/jpeg"); imagejpeg($dst); /*销毁图像*/ imagedestroy($dst); imagedestroy($src); ?> |
imagealphablending —设定图像的混色模式
bool imagealphablending ( resource $image ,bool $blendmode )
如果 blendmode 为 TRUE ,则启用混色模式,否则关闭。成功时返回 TRUE ,或者在失败时返回 FALSE
效果不是很明显
<?php /*创建缩略图图像*/ $dst = imagecreatefromjpeg(‘./2.jpg‘); /*读取原始图*/ $src=\‘#\‘" /small.jpg"); //imagealphablending($src, true); /*复制图像*/ //imagecopymerge(dst_im, src_im, dst_x, dst_y, src_x, src_y, src_w, src_h, pct) imagecopymerge($dst, $src, 500, 900, 0, 0, 300, 500,50); /*输出图像*/ header("content-type:image/jpeg"); imagejpeg($dst); /*销毁图像*/ imagedestroy($dst); imagedestroy($src); ?> |
本文出自 “杜国栋个人PHP学习博文” 博客,请务必保留此出处http://duguodong.blog.51cto.com/7667978/1393699
时间:2014年4月10日08:51:08 图片缩略图及水印,布布扣,bubuko.com
时间:2014年4月10日08:51:08 图片缩略图及水印
原文:http://duguodong.blog.51cto.com/7667978/1393699