我正在将一些图像上传到我的网页,并希望它们的缩略图是从中心裁剪的正方形。我正在使用 Codeigniter 和 gd2。
这是迄今为止我的代码:
$config['image_library'] = 'gd2';
$config['source_image'] = $this->userlibrary->picturesdir . $newfilename;
$config['new_image'] = $this->userlibrary->thumbsdir;
$config['create_thumb'] = TRUE;
$config['maintain_ratio'] = TRUE;
$config['width']= 150;
$config['height']= 150;
图像缩放得很好,但它们保持了纵横比,并且只有它们的宽度或高度设置为 150,它们不会被裁剪。
设置 maintain_ratio
仍然不会裁剪图像,而是会倾斜图像。
我怎样才能做到这一点?
最佳答案
回复 super 晚,但我在寻找同样的东西时发现了这篇文章。我想我会与其他正在寻找相同解决方案的人分享我所使用的解决方案。
$config['source_image'] = 'path/to/image';
//Find smallest dimension
$imageSize = $this->image_lib->get_image_properties($config['source_image'], TRUE);
$newSize = min($imageSize);
$config['image_library'] = 'gd2';
$config['width'] = $newSize;
$config['height'] = $newSize;
$config['y_axis'] = ($imageSize['height'] - $newSize) / 2;
$config['x_axis'] = ($imageSize['width'] - $newSize) / 2;
$this->image_lib->initialize($config);
if(!$this->image_lib->crop())
{
echo $this->image_lib->display_errors();
}
关于php - 在 Codeigniter 中将缩略图裁剪为正方形,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41417493/