File
image 组件的 file 平台在编译时将静态图像嵌入到固件中。图像可以来自配置文件旁边的文件、从 URL 下载,或者来自
可免费使用的 Material Design Icon。
image: - platform: file file: mdi:alert-outline id: alert type: GRAYSCALE transparency: alpha_channel resize: 80x80-
file (必填, string):
-
本地文件:图像文件的路径(相对于 .yaml 文件的位置)。
-
Material Design Icons:指定 Material Design Icon 的 id,格式为
mdi:icon-name,该图标将自动下载并添加到配置中。 -
Material Design Light Icons:指定 Material Design Light Icon 的 id,格式为
mdil:icon-name,该图标将自动下载并添加到配置中。 -
Memory Icons:指定 Memory Icon 的 id,格式为
memory:icon-name,该图标将自动下载并添加到配置中。 -
远程文件:图像文件的 URL,以
http://或https://开头。文件在编译时下载一次。
所有来源都支持 SVG 文件;它们将在编译时按
resize给定的尺寸渲染。 -
-
id (必填, ID):以后在 display 代码中引用图像的 ID。
-
resize (可选, string):如果设置,这将把图像缩放到适合给定尺寸
WIDTHxHEIGHT并保留宽高比。 -
type (必填):指定内部图像编码方式。
-
BINARY:两种颜色,适用于 1 色显示器或色彩显示器中的 2 色图像。每像素使用 1 位, 每字节 8 像素。仅支持chroma_key透明度。 -
GRAYSCALE:全范围灰度。每像素使用 8 位,每字节 1 像素。 -
RGB565:有损 RGB 颜色存储。每像素使用 2 字节,带 alpha 通道时为 3 字节。 -
RGB:完整 RGB 颜色存储。每像素使用 3 字节,带 alpha 通道时为 4 字节。
-
-
transparency (可选):如果设置,将考虑输入图像的 alpha 通道。可选值为
opaque(默认)、chroma_key和alpha_channel。二进制图像不支持alpha_channel。参见 image 组件 中关于透明度的讨论。 -
invert_alpha (可选, boolean):仅适用于二进制和灰度图像,这将反转颜色,即黑白互换。适用于电子墨水显示器。默认为
false。 -
dither (可选):指定用于处理图像的抖动方法,仅用于 GRAYSCALE 和 BINARY 类型图像。默认为
NONE。你可以在 Pillow 文档 和 Wikipedia 上了解更多相关内容。NONE:每个像素转换为其最近的颜色。FLOYDSTEINBERG:使用 Floyd-Steinberg 抖动来逼近原始图像的亮度级别。
-
byte_order (可选, string):对于 RGB565 图像,像素被转换为 16 位值。默认情况下它们将以小端字节序(低位优先)存储, 但你可以通过将
byte_order设置为big_endian来覆盖此设置。可选值为little_endian(默认)和big_endian。 不适用于其他图像格式。 在显示器和 LVGL 中使用的图像预期是小端格式。
除了字符串简写形式,file 选项还接受带类型的 source: 形式:
image: - platform: file id: local_image file: source: local path: "image.png" type: RGB565
- platform: file id: web_image file: source: web url: "https://media.esphome.io/logo/logo.png" type: RGB565
- platform: file id: alert_icon file: source: mdi icon: alert-outline type: BINARY- source (必填, string):
local、web、mdi、mdil或memory之一。 - path (必填(
local时), string):图像文件的路径(相对于 .yaml 文件的位置)。 - url (必填(
web时), url):下载图像文件的 URL。 - icon (必填(
mdi、mdil和memory时), string):图标名称,不包含mdi:样式前缀。