cubic / wn-imageresizer-plugin
Winter CMS 插件,用于调整和压缩图片。
Requires
- composer/installers: ~1.11
- tinify/tinify: ^1.3
This package is auto-updated.
Last update: 2024-09-04 17:38:40 UTC
README
简介
将图片调整到所需尺寸。它接受一个指向图片的文件路径的字符串或 Winter\Storm\Database\Attach\File
对象(如果您使用了 attachOne 或 AttachMany 关系,您将拥有其中之一)
请注意,如果找不到图片,可以通过管理员区域的设置来覆盖。
可用的过滤器
resize(int $width [, int $height , array $options])
,imageWidth()
,imageHeight()
使用字符串
请注意,如果过滤器改变了 URL,您必须在之后应用 resize。
{{ 'assets/graphics/background.jpg' | theme | resize(500,500) }}
使用变量
{{ property.image | resize(500) }}
resize(int $width [, int $height , array $options])
根据给定的参数调整图片大小。如果 $width
或 $height
为 0
,则使用原始图片比例计算该值
选项
在模板中的使用
{{ property.image | resize(500, false, { mode: 'crop', quality: '80', extension: 'png' }) }}
在 PHP 中的使用
如以下所示,图像调整大小器也可以轻松地在 PHP 中使用
use Cubic\ImageResizer\Classes\Image;
$image = new Image('/path/to/image.jpg');
$image->resize(150, 200, [ 'mode' => 'crop' ]);
在后台列表中的使用
图像调整大小器也可以用于类型为 thumb
的后台列表中,例如
image:
label: Image
type: thumb
此功能与以下兼容
您还可以选择性地传入宽度(默认 50)、高度(默认 50)和选项,如下所示
image:
label: Image
type: thumb
width: 75
height: 100
options:
mode: crop
imageWidth() - imageHeight()
返回当前图片宽度/高度 - 如果您需要知道仅通过一边调整大小的图片大小,则很有用。
{{ '/path/to/image.jpg' | resize(250) | imageHeight() }}
通过 TinyPNG 进行图片压缩
此插件与 TinyPNG API 集成,提供图片压缩。需要开发者 API 密钥,要获取一个,请访问 https://tinypng.com/developers。获得后,将其输入到 October CMS 后端图像调整大小设置区域。
TinyPNG 每月提供 500 次免费压缩,插件自动缓存调整大小的图片以节省积分,还提供不压缩某些图片的选项。
如果您专注于页面速度,建议将图片质量设置为 70-80,以获得最小的文件大小,同时仍保持高质量的图片。