ether/imager-thumbor

Imager 的 Thumbor 转换器

1.0.5.1 2019-09-18 10:58 UTC

This package is auto-updated.

Last update: 2024-09-18 22:42:11 UTC


README

Imager 的 Thumbor 转换器

配置

应将配置选项添加到您的配置文件夹中的 imager-thumbor.php 文件。要使用 Thumbor,请在您的 imager.php 配置文件中将 transformer 选项设置为 "thumbor"。

在设置 Thumbor 时,我们建议使用 thumbor.loaders.file_loader_http_fallback 加载器来处理具有和没有公共 URL 的文件(请参阅 图像加载器)。

域名 [字符串]

Thumbor 可以访问的域名(包括端口)。

securityKey [字符串]

在您的 Thumbor 配置文件中定义的安全密钥。请参阅 安全性

local [布尔值]

将文件本地存储(或使用 Imager 配置文件中定义的远程存储服务),而不是使用 Thumbor URL。您需要启用 Thumbor 的 REST 端点才能使此功能正常工作(请参阅 如何上传图像)。

转换选项

format [字符串]

默认: null
允许的值: null, 'jpg', 'png', 'gif', 'webp'

创建图像的格式。如果未设置(默认),则将与源图像相同的格式。

trim [布尔值|字符串]

默认: false

可以使用 trim 选项删除图像周围的空隙。

除非指定,trim 假设为左上角像素颜色,没有容差(关于容差下面有更多介绍)。

如果您需要指定从哪里获取像素颜色的方向,只需将值设置为 top-left 以获取左上角的像素颜色或 bottom-right 以获取右下角的像素颜色。

Trim 还支持颜色容差。参考像素和周围像素之间的颜色欧几里得距离用于。如果距离在容差范围内,则将进行裁剪。对于 RGB 图像,容差范围为 0-442。

mode [字符串]

默认: crop
允许的值: crop, fit, stretch

crop: 裁剪图像到给定大小,将图像缩放以尽可能填满大小。
fit: 缩放图像以适应给定大小,同时保持原始图像的纵横比。
stretch: 缩放图像到给定大小,如果纵横比与原始图像不同,则进行拉伸。

width [整数|字符串]

图像的宽度,以像素为单位。

如果您省略此值或将它设置为 0,Thumbor 将确定该维度与原始图像成比例。

设置为 orig 以使用原始图像的大小。例如,如果原始图像的宽度为 400px,则新图像也将具有该宽度。

负值将翻转图像。将 '-0'(带引号)设置为不调整大小地翻转图像。

height [整数|字符串]

图像的高度,以像素为单位。

如果您省略此值或将它设置为 0,Thumbor 将确定该维度与原始图像成比例。

设置为 orig 以使用原始图像的大小。例如,如果原始图像的高度为 400px,则新图像也将具有该高度。

负值将翻转图像。将 '-0'(带引号)设置为不调整大小地翻转图像。

ratio [整数|浮点数]

一个纵横比(宽度/高度),用于计算未提供的宽度和高度。

{ ratio: 16/9 }

effects [数组]

一个键值数组,用于对图像执行效果,其中键是效果的名称,值包含效果的参数。请参阅下方的效果

位置 [字符串|数组]

裁剪的周围位置。可以是包含 % 位置的字符串20% 65%,或命名位置middle-right,或包含 x/y 十进制位置的数组['x' => 0.2, 'y' => 0.65]

智能 [布尔值]

裁剪图像时将使用 Thumbor 的智能焦点检测。

放大 [布尔值]

默认: false

如果为 true,将放大图像以适应给定的大小。

效果

autojpg [布尔值]

true 时,将非透明 PNG 图像转换为 JPG。

backgroundColor [字符串]

将背景层设置为指定的颜色。这在将透明图像(PNG)转换为 JPEG 时特别有用。

值应该是颜色名称(如 HTML 中的颜色)或不含“#”字符的十六进制 rgb 表达式(例如,请参阅Web 颜色)。如果颜色是 auto,则将智能选择(基于图像像素)的颜色作为填充颜色。

blur [整数|数组]

对图像应用高斯模糊。

接受单个整数作为模糊的半径,或匹配 [半径,sigma] 的数组。

  • radius用于高斯函数生成矩阵,最大值为150。半径越大,图像越模糊。
  • sigma是可选的,默认值与radius相同。Sigma用于高斯函数。

brightness [整数]

增加或减少图像亮度。

接受从 -100 到 100 的整数。更改图像亮度的百分比。正数使图像变亮,负数使图像变暗。

contrast [整数]

增加或减少图像对比度。

接受从 -100 到 100 的整数。更改图像对比度的百分比。正数增加对比度,负数减少对比度。

convolution [数组]

在图像上运行卷积矩阵(或核)。有关过程的详细信息,请参阅核(图像处理)。边缘像素始终扩展到图像区域外。

接受参数数组 [matrix_items, number_of_columns, should_normalize]

  • matrix_items 分号分隔的矩阵项
  • number_of_columns 矩阵中的列数
  • should_normalize 我们是否应该将每个矩阵项除以所有项的总和

示例

-1 -1 -1
-1  8 -1
-1 -1 -1
{{ craft.imager.transformImage(img, {
    effects: {
        convolution: ['-1;-1;-1;-1;8;-1;-1;-1;-1', 3, false],
    },
}) }}

equalize [布尔值]

均衡图像中的颜色分布。

fill [字符串|数组]

将图像尺寸精确到请求的大小,并在其比例不足的地方用所选颜色填充,以返回图像。仅在mode设置为fit时适用。

接受字符串color或数组[color, fill_transparent]

  • color接受
    • 颜色名称(如 HTML 中的颜色)或不含“#”字符的十六进制 RGB 表达式(例如,请参阅Web 颜色)。
    • 如果颜色是“透明”且图像格式支持透明度,则填充颜色为透明。
    • 如果颜色是“auto”,则将根据图像像素智能选择颜色作为填充颜色。
    • 如果颜色是“blur”,则用模糊的原始图像填充缺失的部分。
  • fill_transparent指定是否填充图像的透明区域。接受的值是 true、false、1 或 0。此参数是可选的,默认值是 false。

灰度 [布尔值]

将图像转换为灰度。

maxBytes [整型]

自动降低图像质量,直到图像的字节大小低于指定的数量。

noise [整型]

向图像添加噪声。接受一个介于 0 - 100 的值,作为添加到图像中的噪声量(百分比)。

proportion [浮点数]

将比例应用于传递给裁剪的高度和宽度。接受一个介于 0 - 1 的浮点数作为比例的百分比(例如,0.5 表示裁剪后图像的大小将缩小到 50%)。

quality [整型]

设置 JPEG 图像的整体质量(PNG 或 GIF 无效)。期望的值介于 0 - 100,作为质量级别(百分比)。

rgb [数组]

将改变每个三通道中的颜色量。

接受一个范围从 -100 到 100 的 RGB 值数组 [r, g, b]

rotate [整型]

根据传递的角度值旋转给定图像。应设置为介于 0 - 359 度的角度。大于或等于 360 的数字将转换为介于 0 到 359 度之间的等效角度。

sharpen [数组]

增强图像的明显锐度。它基于 Marco Rossini 的优秀 Wavelet sharpen GIMP 插件。

接受一个具有以下值的数组:[sharpen_amount, sharpen_radius, luminance_only]

  • sharpen_amount - 锐化量。典型值介于 0.0 和 10.0 之间。
  • sharpen_radius - 锐化半径。典型值介于 0.0 和 2.0 之间。
  • luminance_only - 只锐化亮度通道。值可以是 truefalse