artemdanilov/flexipic

Statamic 插件,用于生成响应式图片

v1.1.1 2024-07-04 11:21 UTC

This package is auto-updated.

Last update: 2024-09-04 11:37:53 UTC


README

概述

Flexipic 是一个 Statamic 插件,旨在通过 Glide 无缝地生成响应式图片,并使用 picture 标签将其无缝集成到 Statamic 项目中。

安装

使用 Composer 安装。

composer require artemdanilov/flexipic

安装后,Flexipic 将创建 config/statamic/flexipic.php 文件。

使用方法

要启用 Flexipic 并生成响应式图片,只需在您想显示图片的地方插入以下代码行

{{ flexipic :src="assets" }}

{{ flexipic src="url_to_image" }}

它将生成一个包含 <source><img> 标签的 <picture> 标签。

在上面的示例中,图片是根据 config 文件中的参数生成的。这些参数对于全局使用是必要的。但是,您可以直接在标签中重写这些参数

{{ flexipic
    :src="image"
    :width="[320, 640]"
}}

在上面的示例中,标签将生成宽度分别为 320px640px 的两张图片。请注意,我们没有指定高度属性,因为高度是根据元标签自动计算的。如果您想为您的图片设置另一个高度,请随时这样做

{{ flexipic
    :src="image"
    :width="[320, 640]"
    height="400"
}}

标签将为 width 数组中的第一个值设置 400px 的高度,并计算第二个值的高度。

当然,您还可以使用更多参数。

! 如果您的图片 URL 来自外部来源,您需要指定一个高度。 !

可用参数

Flexipic 支持各种参数,您可以将它们包含在您的标签中,每个参数都将生成 HTML 属性。但是,某些参数(如 qualityfitplaceholder)被排除在属性生成之外。

懒加载

如果您为平滑的懒加载效果设置了 loadingplaceholder 参数,您应将一个 JS 函数传递到您的 resources/js/site.js 文件中

import flexipicLazyload from '../../vendor/artemdanilov/flexipic/dist/flexipicLazyload.min';

window.addEventListener('DOMContentLoaded', () => {
    flexipicLazyload('.flexipic');
})

支持

如果您在使用 Flexipic 时遇到任何问题或有任何疑问,请随时通过以下邮箱联系我 artemdanilow@gmail.com

许可证

Flexipic 在 MIT 许可证下发布。您可以自由使用、修改和分发它,以满足您的需求。