kerox / twig-image-placeholder-extension
一个用于生成图像占位符的Twig扩展
v2.0.0
2022-10-23 17:53 UTC
Requires
- php: >=8.1
- ext-dom: *
- twig/twig: ^3.0
Requires (Dev)
- friendsofphp/php-cs-fixer: ^3.0
- phpunit/phpunit: ^9.5
README
Twig Image Placeholder Extension
一个用于生成图像占位符的Twig扩展
灵感来源于 simple-svg-placeholder
安装
您可以使用Composer安装此扩展
composer require kerox/twig-image-placeholder-extension
Symfony
如果您使用的是 Symfony Flex,则已完成。
否则,将以下行添加到您的 services.yaml
services: ... Kerox\TwigImagePlaceholder\SvgPlaceholderExtension: null
独立使用
如果您独立使用Twig,则需要手动添加此扩展
$extension = new \Kerox\TwigImagePlaceholder\SvgPlaceholderExtension(); $twig = new \Twig\Environment($loader); $twig->addExtension($extension);
用法
以下函数可用
- SvgExtension
- svg_placeholder()
- svg_placeholder_uri()
示例
默认
{{ svg_placeholder() }}
尺寸
{{ svg_placeholder(150, 150) }}
颜色
{{ svg_placeholder(300, 150, { bgColor: '#0f1c3f' , textColor: '#7fdbff' }) }}
文本
{{ svg_placeholder(300, 150, { text: 'Foo Bar' }) }}
或者不使用
{{ svg_placeholder(300, 150, { text: false }) }}
数据URI
<img src="{{ svg_placeholder_uri() }}">
将输出
<img src="data:image/svg+xml;charset=UTF-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22300%22%20height%3D%22150%22%20viewBox%3D%220%200%20300%20150%22%3E%3Crect%20fill%3D%22%23ddd%22%20width%3D%22300%22%20height%3D%22150%22%3E%3C%2Frect%3E%3Ctext%20fill%3D%22rgba%280%2C0%2C0%2C0.5%29%22%20font-family%3D%22sans-serif%22%20font-size%3D%2230%22%20font-weight%3D%22bold%22%20dy%3D%2210.5%22%20x%3D%2250%25%22%20y%3D%2250%25%22%20text-anchor%3D%22middle%22%3E300x150%3C%2Ftext%3E%3C%2Fsvg%3E">