【发布时间】:2020-09-29 06:14:35
【问题描述】:
我有一段代码通过 Codeigniter gd2 库压缩图像。然而,它变成了这张照片
进入这个
因为我在代码中设置了宽度和高度。但是,当我删除这两行时,$config['quality'] 属性不起作用。我该如何解决这个问题并保存压缩它的图像的实际大小?
这是我的代码:
$image_datar = $this->upload->data();
$config['image_library'] = 'gd2';
$config['source_image'] = './assets/img/single_courses/'.$image_datar["file_name"];
$config['maintain_ratio'] = false;
$config['quality'] = '60%';
$config['width'] = '750';
$config['height'] = '500';
$config['new_image'] = './assets/img/single_courses/'.$image_datar["file_name"];
$this->load->library('image_lib', $config);
$this->image_lib->resize();
$post_image = $image_datar["file_name"];
【问题讨论】:
-
嗯那么
compressed是什么意思 -
@RiggsFolly 将 2MB 图像文件变成 500KB 图像文件
-
您要调整大小的原始图像是否总是相同的大小?
-
@Vickel 我希望它们大小相同但质量较低
-
好的,那么您需要获取源图像大小,我想您可以在 $image_datar 中找到它。尝试 print_r($image_datar);然后动态设置配置高度和宽度。如果不使用 php 函数 getimagesize(),请参见此处:php.net/manual/en/function.getimagesize.php
标签: php codeigniter