使用方法
$img = new iamge;
$img>resize(dstimgjpg srcimgjpg );
说明这个是按照比例缩放dstimgjpg是目标文件srcimgjpg是源文件后面的是目标文件的宽和高
$img>thumb(dstimgjpg scrimgjpg );
说明这个是按照比例缩略图比如常用在头像缩略图的时候dstimgjpg是目标文件srcimgjpg是源文件后面的是目标文件的宽和高
这个是针对GD库才这样麻烦的如果采用Imagick的话就只需要两个函数就实现上面的功能去查下文档就找到了
<?php
class image{
public function resize($dstImg $srcImg $dstW $dstH){
list($srcW $srcH) = getimagesize($srcImg);
$scale = min($dstW/$srcW $dstH/$srcH);
$newW = round($srcW * $scale);
$newH = round($srcH * $scale);
$newImg = imagecreatetruecolor($newW $newH);
$srcImg = imagecreatefromjpeg($srcImg);
imagecopyresampled($newImg $srcImg $newW $newH $srcW $srcH);
imagejpeg($newImg $dstImg);
}
public function thumb($dstImg $srcImg $dstW $dstH){
list($srcW $srcH) = getimagesize($srcImg);
$scale = max($dstW/$srcW $dstH/$srcH);
$newW = round($dstW/$scale);
$newH = round($dstH/$scale);
$x = ($srcW $newW)/;
$y = ($srcH $newH)/;
$newImg = imagecreatetruecolor($dstW $dstH);
$srcImg = imagecreatefromjpeg($srcImg);
imagecopyresampled($newImg $srcImg $x $y $dstW $dstH $newW $newH);
imagejpeg($newImg $dstImg);
}
}
function createFromType($type $srcImg){
$function = "imagecreatefrom$type";
return $function($srcImg);
}
//为了解决不同图片格式的问题