我们使用INI
文件将缩放
设置为宽度或高度0的大小以放大或缩小
图片,0或原始大小,而不是0组中断到指定的大小。
注意:INI文件被解释为PHP作为注释文件,并且没有输出,这是出于安全目的,也就是INI文件的注释。
我设置的INI文件如下所示:
复制代码代码如下所示:
< PHP
*
使用原始图像大小
转换图像格式
{
翻译}
宽度= 0
高度= 0
将图像拉伸到指定的大小。
{拉}
宽度= 800
高度= 600
用高度自动缩放图像到指定的宽度。
{ autoheight }
宽度= 740
高度= 0
将图像缩放到指定的高度,宽度自动大小。
{ AutoWidth }
宽度= 0
高度= 380
* /
>
下面是用来编写缩放图片的PHP代码,其中变量类是一个数组,可以选择任何多个INI文件中指定的设置:
复制代码代码如下所示:
< PHP
$oimg = test.webp; //Original image name
美元类=阵列(,'autoheight ','autowidth ','stretch '); / /给类的新的,它也被称为。
$
后缀= 'jpg '; / /新图像的后缀
$
删除=图像PHP INI;
$大小= getimagesize($ oimg);
$ x = $大小{ 0 } / $大小{ 1 };
$name =(爆炸,oimg美元);
如果(!file_exists($删除))死('ini文件不存在!);
cn = parse_ini_file美元($删除,true); / /解析类风格的图像尺寸从INI
foreach(合班上课美元){
foreach(CN美元美元美元K = > v){
如果($ = $ Class){
如果($ V { 'width} $ V { 'height ' }){
$ thumbWidth = $ V { 'width};
$ thumbHeight = $ V { 'height};
} elseif($ V { 'width ' }){
$ thumbWidth = $ V { 'width};
$ thumbHeight =圆(约合thumbWidth / X元);
} elseif($ V { 'height ' }){
$ thumbHeight = $ V { 'height};
$ thumbWidth =圆(约合thumbHeight×X元);
其他{ }
美元美元thumbWidth =大小{ 0 };
美元美元thumbHeight =大小{ 1 };
}
打破;
}
}
如果(!isset($ thumbHeight)!isset($ thumbWidth))死('ini文件设置
错误!;
$壳= $名{ 0 }。'_。美元类。'。为后缀; / /新图像文件的名称
$源= imagecreatefromjpeg($ oimg);
拇指=美元新建一个真彩色图像(thumbWidth美元,$ thumbHeight);
imagecopyresampled($美元拇指,源,0,0,0,0 thumbWidth美元,美元,美元thumbHeight,大小{ 0 },{ 1 } $大小);
如果($后缀= = 'jpg)$
方法= 'imagejpeg;
其他方法=图像的美元美元后缀;
美元($美元方法拇指、壳);
销毁一图像($拇指); / /释放图像源
销毁一图像(合源);
}
>