thinkphp5 图片压缩-thinkphp image类 缩略图为什么旋转九十度
thinkphp如何做图片压缩呢?

在上传图片的时候先看看图片有多大,一般来说导航幻灯片的图片单张大小尽量不超100k,产品图不超过20k,这样加载还慢的话就用ajax后加载方法,可以是滚动加载之类,但是对蜘蛛抓取页面并不是很友好。
至于你说的用tp把图片压缩,那只能是将图片的尺寸改成你想要的尺寸,大小的话是web所用格式大小,等页面加载完你又换原图,这样相当于又加载了一遍,还不如做ajax滚动加载。
thinkphp 怎么用程序自动判断压缩图片的大小

直接使用THINKPHP自带的方法就能获取了,你可以参考以下代码!
$image = new \Think\Image();
$image->open('./1.jpg');
$width = $image->width(); // 返回图片的宽度
$height = $image->height(); // 返回图片的高度
$type = $image->type(); // 返回图片的类型
$mime = $image->mime(); // 返回图片的mime类型
$size = $image->size(); // 返回图片的尺寸数组 0 图片宽度 1 图片高度
原生PHP是这样的:
//int filesize ( string $filename )
// 输出类似:: 1024 bytes
$filename = '';
echo $filename . ': ' . filesize($filename) . ' bytes';
thinkphp image类 缩略图为什么旋转九十度

我这样解决的:
$src = $_FILES['imgfile']['tmp_name'];
if($src){
$image = imagecreatefromstring(file_get_contents($src));
$exif = exif_read_data($src);
if(!empty($exif['Orientation'])) {
switch($exif['Orientation']) {
case 8:
$rotate = imagerotate($image,90,0);
break;
case 3:
$rotate = imagerotate($image,180,0);
break;
case 6:
$rotate = imagerotate($image,-90,0);
break;
}
imagepng($rotate,$src,100);
}
$image = \think\Image::open($src);
$image->thumb(300,200);
$saveName = time() . '.png';
$image->save(ROOT_PATH . 'public/static/uploads/' . $saveName);
$data["img"] = '/uploads/' . $saveName;
}
直接旋转了临时文件,反正压缩后都是png,就不分图片类型了。
-
果盘绘画图片大全简单创作方法快速制作技巧2024-01-02 16:57:54
-
小年插画图片创作方法快速制作技巧2024-01-02 16:57:20
-
小年绘画作品制作技巧2024-01-02 16:55:45
-
小年插画图片创作方法快速制作技巧2024-01-02 16:55:02
-
立春插画图片如何制作2024-01-02 16:54:19
-
立春插画图片创作方法快速制作技巧2024-01-02 16:53:32






扫描二维码添加客服微信
扫描二维码关注