gpt4 book ai didi

yii - 如何通过 yii2 中的 Imagine 扩展来调整图像大小

转载 作者:行者123 更新时间:2023-12-02 03:03:40 25 4
gpt4 key购买 nike

我使用下面的函数在上传后调整图像大小以显示在我的帖子上。但它仅适用于大于 500px 300px 的图像。当我上传小于此尺寸的图像时,我的网站图像行会崩溃。

use yii\imagine\Image;    
public function upload() {
$this->pictureFile->saveAs('../files/upload/' . $this->pictureFile->baseName . '.' . $this->pictureFile->extension);

Image::thumbnail('../files/upload/' . $this->pictureFile, 500, 300)
->save('../files/upload/thumbnail-500x300/' . $this->pictureFile->baseName . '.' . $this->pictureFile->extension,
['quality' => 70]);
unlink('../files/upload/' . $this->pictureFile->baseName . '.' . $this->pictureFile->extension);
}

最佳答案

尝试以下操作,而不是 Image::thumbnail

$imagine = Image::getImagine();
$image = $imagine->open('../files/upload/' . $this->pictureFile);
$image->resize(new Box(500, 300))->save('../files/upload/thumbnail-500x300/' . $this->pictureFile->baseName . '.' . $this->pictureFile->extension, ['quality' => 70]);

还没有测试过它,但由于 yii 的 Image 只是 Imagine 库的包装器,因此只需进行一些小的更改(如果需要的话)就可以工作。

是的,在使用上面的代码之前,您需要在文件中使用 Imagine\Image\Box;

关于yii - 如何通过 yii2 中的 Imagine 扩展来调整图像大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36007799/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com