
PHP有这样的函数吗,我不太清楚,如果有,是不是要加载一系列的DLL呢,我建议不要用PHP的函数来做这个。
我建议使用“ImageMagick”工具来做这些事情,中文网站:http://wwwimagemagickcomcn/
ImageMagick可以做许许多多的功能:它可以读取、转换、写入多种格式的。切割、颜色替换、各种效果的应用,的旋转、组合,文本,直线,多边形,椭圆,曲线,附加到伸展旋转。ImageMagick是免费软件:全部源码开放,可以自由使用,复制,修改,发布,它遵守GPL许可协议,可以运行于大多数的 *** 作系统。ImageMagick的大多数功能的使用都来源于命令行工具。通常来说,它可以支持以下程序语言: Perl, C, C++, Python, PHP, Ruby, Java;现成的ImageMagick接口(PerlMagick, Magick++, PythonMagick, MagickWand for PHP, RubyMagick, and JMagick)是可利用的。这使得自动的动态的修改创建变为可能。ImageMagick支持至少90种格式:。
转换的核心文件是CONVERTEXE,利用这个文件,使用PHP的SYSTEM调用,可以完成各种文件的变换。我网站的程序里面把用户上传宽度大于800的调整为800的语句如下:
$imginfo=getimagesize($tmp_name);
if ($imginfo && $imginfo[0]>0){
//压缩宽度超过800的为800,10K以上的JPG用30%进行压缩
if ($imginfo[0]>800){
echo "你上传的幅面为 $imginfo[0] x $imginfo[1] ,将被压缩到800个象素宽。<br>";
system('"C:\Program Files\ImageMagick-607-Q16\convertexe"'" -sample 800 -quality 80 $tmp_name $tmp_name");
} elseif($imginfo[2]==2 && $src_size>10240) system('"C:\Program Files\ImageMagick-607-Q16\convertexe"'" -quality 30 $tmp_name $tmp_name");
//压缩BMP、TIFF文件为JPG格式
if ($imginfo[2]==6 || $imginfo[2]==7 || $imginfo[2]==8){
system('"C:\Program Files\ImageMagick-607-Q16\convertexe"'" -quality 80 $tmp_name $tmp_namejpg");
rename("$tmp_namejpg",$tmp_name);
$ext='jpg';
}
}
以上就是关于php 调整图片大小函数全部的内容,包括:php 调整图片大小函数、、等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)