PHP实现原比例生成缩略图的方法
这篇文章主要介绍了PHP实现原比例生成缩略图的方法,涉及PHP的图形操作及数学运算相关技巧,非常简单实用,需要的朋友可以参考下。
本文实例讲述了PHP实现原比例生成缩略图的方法,分享给大家供大家参考,具体如下:
- <?php
- $image = "jiequ.jpg"; // 原图
- $imgstream = file_get_contents($image);
- $im = imagecreatefromstring($imgstream);
- $x = imagesx($im);//获取图片的宽
- $y = imagesy($im);//获取图片的高
- // 缩略后的大小
- $xx = 140;
- $yy = 200;
- if($x>$y){
- //图片宽大于高
- $sx = abs(($y-$x)/2);
- $sy = 0;
- $thumbw = $y;
- $thumbh = $y;
- } else {
- //图片高大于等于宽
- $sy = abs(($x-$y)/2.5);
- $sx = 0;
- $thumbw = $x;
- $thumbh = $x;
- }
- if(function_exists("imagecreatetruecolor")) {
- $dim = imagecreatetruecolor($yy, $xx); // 创建目标图gd2
- } else {
- $dim = imagecreate($yy, $xx); // 创建目标图gd1
- }
- imageCopyreSampled ($dim,$im,0,0,$sx,$sy,$yy,$xx,$thumbw,$thumbh);
- header ("Content-type: image/jpeg");
- imagejpeg ($dim, false, 100);
- ?>