php图片的合并、剪切等函数

<?php
	//第一张图
	$image = 'c.jpg';
	$img = GetImageSize($image);
	//print_r($img); 输出后Array ( [0] => 1024 [1] => 682 [2] => 2 [3] => width="1024" height="682" [bits] => 8 [channels] => 3 [mime] => image/jpeg )
	
	switch($img[2])
	{
		case 1:
		$im = @ImageCreateFromGIF($image);
		break;
		case 2:
		$im = @ImageCreateFromJPEG($image);
		break;
		case 3:
		$im = @ImageCreateFromPNG($image);
		break;
	}
	
	//第二张图
	$logo = 'a.jpg';
	$ing = GetImageSize($logo);
	
	switch($ing[2])
	{
		case 1:
		$in = @ImageCreateFromGIF($logo);
		break;
		case 2:
		$in = @ImageCreateFromJPEG($logo);
		break;
		case 3:
		$in = @ImageCreateFromPNG($logo);
		break;
	}
	
	//将两个图合并,将$in合并在$im上,其中138和138是$in的大小
	imagecopy($im,$in,400,30,0,0,'138','138');
	
	//下面是将图片上打上文字水印
	$te = imagecolorallocate($im,255,255,255);
	$str = iconv("gbk","UTF-8","新春快乐"); //确定要绘制的中文文字
	imagettftext($im,36,0,rand(20,$img[0]),rand(20,$img[0]),$te,'simhei.ttf',$str);
	
	//直接将合成的图存到当前目录
	ImageJpeg($im,'n.jpg');	
	
	//剪切图像
	//画布大小,原图大小的一半
	$new = ImageCreateTrueColor($img[0]/2,$img[1]/2);
	//剪切图像时$img[1]/2,指将大小缩小到原图的一半,最后面的$img[0],$img[1]指图片原始大小
	ImageCopyResized($new,$im,0,0,0,0,$img[0]/2,$img[1]/2,$img[0],$img[1]);
	
	//在页面中输出图像
	header("Content-type:image/jpeg");
	ImageJpeg($new);	
?>

评论

大侠名号:   验证码: 点击我更换图片  

修远兮

在这里记录每一点自己需要的知识

添加创始人微信,一起交流心得

推荐文章RECOMMEND