我正在尝试上传图像并将其缩放到最大 200 像素宽度或 200 像素高度取决于哪个更大,使用想象。
我读了这个链接:想象一下它在哪里说:
如果其中一个缩略图尺寸设置为空,则会根据原始图像的纵横比自动计算另一个尺寸。
我试过这段代码来改变宽度:
Image::thumbnail($target, 200, null)->save($target_to);
出现错误:异常 Imagine\Exception\InvalidArgumentException 与消息长度侧不能为 0 或负数。
我也在尝试上传具有透明背景的 png 文件。查看相同的链接,它说:
如果缩略图模式为 ImageInterface::THUMBNAIL_INSET,则原始图像将按比例缩小,使其完全包含在缩略图尺寸内。其余的填充可以通过 yii\imagine\Image::$thumbnailBackgroundColor 和 yii\imagine\Image::$thumbnailBackgroundAlpha 配置的背景。
查看他们提供的链接,它说它将填充:
$thumbnailBackgroundAlpha 公共静态属性(从 2.0.4 版开始可用)在指定宽度和高度的 ImageInterface::THUMBNAIL_INSET 模式下创建缩略图时使用的背景 alpha(透明度)。默认为实心。公共静态字符串 $thumbnailBackgroundAlpha = 100 $thumbnailBackgroundColor 公共静态属性(从 2.0.4 版开始可用) 在指定宽度和高度的 ImageInterface::THUMBNAIL_INSET 模式下创建缩略图时使用的背景颜色。默认为白色。公共静态字符串 $thumbnailBackgroundColor = 'FFF'
我有两个问题:
这会保持透明背景吗?公共静态字符串 $thumbnailBackgroundAlpha = 100 $thumbnailBackgroundColor 公共静态属性(从 2.0.4 版本开始可用)
我不想给出宽度和高度,只给出一个维度,因此图像将相应地调整大小。我怎么做?