php > 改变图片大小

本文介绍如何使用PHP函数functionresizejpg来调整JPEG图像的大小。通过此函数,可以改变图片的宽度和高度,同时保持原始图片的质量。具体实现包括获取图片尺寸、判断图片类型并进行相应的转换,然后创建新的图像并应用缩放操作,最后输出调整后的图片。
摘要由CSDN通过智能技术生成

 

function resizejpg($imgsrc,$imgdst,$imgwidth,$imgheight)
	{ 
		//$imgsrc jpg格式图像路径 $imgdst jpg格式图像保存文件名 $imgwidth要改变的宽度 $imgheight要改变的高度
		//取得图片的宽度,高度值
		$arr = getimagesize($imgsrc);  
		//判断图片类型
		$file = fopen($imgsrc, "rb"); 
		$bin = fread($file, 2);
		fclose($file); 
		$strInfo = @unpack("C2chars", $bin); 
		$typeCode = intval($strInfo['chars1'].$strInfo['chars2']); 
		$fileType = ''; 
		switch ($typeCode) 
		{ 
		case 255216: 
		header("Content-type: image/jpg");
		$imgsrc = imagecreatefromjpeg($imgsrc);
		break; 
		case 7173: 
		header("Content-type: image/gif");
		$imgsrc = imagecreatefromgif($imgsrc);
		break; 
		case 13780: 
		header("Content-type: image/png");
		$imgsrc = imagecreatefrompng($imgsrc);
		break; 
		default: 
		header("Content-type: image/jpg");
		$imgsrc = imagecreatefromjpeg($imgsrc);
		}                    
		
		$imgWidth = $imgwidth;
		$imgHeight = $imgheight;
		// Create image and define colors
		$image = imagecreatetruecolor($imgWidth, $imgHeight);  //创建一个彩色的底图
		imagecopyresampled($image, $imgsrc, 0, 0, 0, 0,$imgWidth,$imgHeight,$arr[0], $arr[1]);
		imagepng($image);
		imagedestroy($image);
	}
 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值