PHP 中图片等比缩放的实例
PHP 中图片等比缩放的实例,需要的朋友可以参考一下
代码如下:
<?php
//
图片的等比缩放
//因为 PHP 只能对资源进行操作,所以要对需要进行缩放的图片进行拷贝,创建为新的
资源
$src
=imagecreatefromjpeg('a.jpg');
//
取得源图片的宽度和高度
$size_src
=
getimagesize
('a.jpg');
$w
=
$size_src
['0'];
$h
=
$size_src
['1'];
//
指定缩放出来的最大的宽度(也有可能是高度)
$max
=300;
//根据最大值为 300
,算出另一个边的长度,得到缩放后的图片宽度和高度
if
(
$w
>
$h
){
$w
=
$max
;
$h
=
$h
*(
$max
/
$size_src
['0']);
}
else
{
$h
=
$max
;
$w
=
$w
*(
$max
/
$size_src
['1']);
}
//声明一个$w 宽,$h
高的真彩图片资源
$image
=imagecreatetruecolor(
$w
,
$h
);
//关键函数,参数(目标资源,源,目标资源的开始坐标 x,y, 源资源的开始坐标 x,y,目标
资源的宽高 w,h,源资源的宽高 w,h
)
imagecopyresampled(
$image
,
$src
, 0, 0, 0, 0,
$w
,
$h
,
$size_src
['0'],
$size_src
['1']);
//
告诉浏览器以图片形式解析
header('content-type:image/png');