图片太大,规格不统一,
显示控制需要依靠Javascript来完成显示效果不好,和移动设备上的一个巨大的流量,对现有的
处理图片的需要,生成缩略图的装置,将原来的
工作的客户端JS
服务器与PHP的GD库集中处理。
图片来源和需求的大小:
复制代码代码如下所示:
src_img美元=壁纸.webp;
dst_w = 300美元;
dst_h = 200美元;
剪切图像以确保图像的
区域最大化并缩放到指定的大小。
一个拷贝部分图像并
调整大小的
方法用于图像的缩放,实际
操作后会
发现像素的图像还原是非常严重的。变化后imagecopyresampled(这里说的,许多网上转载的文章却写imagecopyresampled imagecopysampled不能使用,所以我重新发布这一方法,该方法对图像重新)采样,减少了图像平滑的大小,分辨率大大提高。
复制代码代码如下所示:
< PHP
列表(src_w美元,美元src_h)= getimagesize($ / / src_img);得到原来的大小
dst_scale美元美元美元= dst_h / / / dst_w;
目标图像的长宽比
src_scale美元美元美元= src_h / / / src_w;原来的长宽比
如果($ src_scale > = $ dst_scale)
{
/高
W = intval美元(美元src_w);
H = intval美元(美元dst_scale * $ W);
$ x=0;
Y元=(src_h美元- $ H) / 3;
}
其他的
{
/太宽
H = intval美元(美元src_h);
W = intval美元($ H / dst_scale美元);
X =(src_w美元- $ W) / 2;
$ y=0;
}
剪切
$源= imagecreatefromjpeg($ src_img);
$露=新建一个真彩色图像($ W $ H);
imagecopy($露,$源,0,0,X、Y元,src_w美元,美元src_h);
缩放
美元美元美元规模= dst_w / W;
目标=新建一个真彩色图像(dst_w美元美元,美元dst_h);
final_w美元= intval($ W * $规模);
final_h = intval美元($ H * $规模);
imagecopyresampled($美元目标,露,0,0,0,0,final_w美元,final_h美元美元美元,W,H);
保存 时间戳=时间();
imagejpeg(美元的目标,为时间戳。jpg);
销毁一图像(为目标);
>
我希望你能用它,或者更方便些。