php header("Content-type: image/jpg");
php
header("Content-type: image/jpg");
readfile("test.jpg");
输出图片的时候图片太大了。1000px,能不能设置为500px输了呢?
<?php
//调整图片大小
/**
*图片按比例调整大小的原理:
*1、比较原图大小是否小于等于目标大小,如果是则直接采用原图宽高
*2、如果原图大小超过目标大小,则对比原图宽高大小
*3、如:宽>高,则宽=目标宽, 高=目标宽的比例 * 原高
*4、如:高>宽,则高=目标高,宽=目标高的比例 * 原宽
**/
$image
=
"test.jpg"
;
$max_width
= 200;
$max_height
= 200;
$size
=
getimagesize
(
$image
);
//得到图像的大小
$width
=
$size
[0];
$height
=
$size
[1];
$x_ratio
=
$max_width
/
$width
;
$y_ratio
=
$max_height
/
$height
;
if
((
$width
<=
$max_width
) && (
$height
<=
$max_height
))
{
$tn_width
=
$width
;
$tn_height
=
$height
;
}
elseif
((
$x_ratio
*
$height
) <
$max_height
)
{
$tn_height
=
ceil
(
$x_ratio
*
$height
);
$tn_width
=
$max_width
;
}
else
{
$tn_width
=
ceil
(
$y_ratio
*
$width
);
$tn_height
=
$max_height
;
}
$src
= imagecreatefromjpeg(
$image
);
$dst
= imagecreatetruecolor(
$tn_width
,
$tn_height
);
//新建一个真彩色图像
imagecopyresampled(
$dst
,
$src
, 0, 0, 0, 0,
$tn_width
,
$tn_height
,
$width
,
$height
);
//重采样拷贝部分图像并调整大小
header(
'Content-Type: image/jpeg'
);
imagejpeg(
$dst
,null,100);
imagedestroy(
$src
);
imagedestroy(
$dst
);
?>