Sian 发表于 2015-6-28 10:15:10

PHP自动生成缩略图方法

1、定义一个函数
function CreatThumbnail($imagePath, $thumPath){
        $size = getimagesize($imagePath);
        $width = $size;
        $height = $size;
        $w = $width * 0.5;
        $h = $height * 0.5;
        $thumb = imagecreatetruecolor($w, $h);
        $image = imagecreatefromjpeg($imagePath);
        imagecopyresampled($thumb, $image, 0, 0, 0, 0, $w, $h, $width, $height);
        imagejpeg($thumb, $thumPath);
}
2、相关说明:
// 两个参数imagePath与thumPath分别代表原图地址与缩略图输出地址
CreatThumbnail($imagePath, $thumPath)


// 取出图片尺寸,返回值为数组,数组的第一个元素为图片宽,第二个元素为高
$size = getimagesize($imagePath);
$width = $size;
$height = $size;


// 创建一个新图层
$thumb = imagecreatetruecolor($w, $h);


// 获取原图片对象
$image = imagecreatefromjpeg($imagePath);


// 渲染图层,参数分别为:新图层,原图对象,新图层x轴起点, 新图层y轴起点, 原图x轴起点, 原图y轴起点, 绘新图层宽, 绘新图层高, 取原图宽,取原图高,简单一点理解,前面写4个0,后面分别写新图层的宽高与原图像的宽高即可!
imagecopyresampled($thumb, $image, 0, 0, 0, 0, $w, $h, $width, $height);


// 输出图片, 第一个参数为新图层对象,第二个参数为输出目标路径。
imagejpeg($thumb, $thumPath);
页: [1]
查看完整版本: PHP自动生成缩略图方法