首页 > 其他 > 详细

时间:2014年4月10日08:51:08 图片缩略图及水印

时间:2014-04-11 15:43:12      阅读:412      评论:0      收藏:0      [点我收藏+]


主要内容:

图像复制(水印)

图像半透明复制

图像按比例复制(缩略图)



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

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!