codeat3/blade-icon-generation-helpers

codeat3在blade-icon生成脚本中使用的辅助方法

1.4.1 2023-02-27 17:03 UTC

This package is auto-updated.

Last update: 2024-08-28 10:47:10 UTC


README

一个辅助包,用于将图标转换为与blade-icons包兼容的格式。

安装

composer require codeat3/blade-icon-generation-helpers

使用

请参考生成图标部分,来自Blade Icons。本包利用after回调来按照我们的需求处理图标。

after回调接收3个参数:string $icon - 这是图标的路径名,array $config - 在generation.php中指定的配置,SplFileInfo $file - 原始图标文件实例。

在回调函数内部,我们实例化我们的Processor类并使用它的辅助方法来提高效率。

$iconProcessor = new IconProcessor($icon, $config, $sourceFile);

默认情况下,此IconProcessor实例会进行一些优化。最小使用方法如下。

$iconProcessor = new IconProcessor($icon, $config, $sourceFile);
    $iconProcessor
        ->optimize()
        ->save();

optimize方法默认执行以下操作

  • 从svg中移除以下属性
    • 'width', 'height', 'class', 'style', 'id',
  • 如果配置中is-outline设置为true
    • 如果存在fill属性 - 将更新为none
    • 如果存在stroke属性 - 将更新为currentColor
  • 如果配置中is-solid设置为true
    • 如果存在fill属性 - 将更新为currentColor
  • 如果配置中设置了custom-attributes
    • 将设置属性到svg
  • 可选地提供2个可调用的方法prepost
    • 两个回调都接收$svgEL作为DOMDocument - 这是当前图标的DOMDocument实例
    • pre可以在执行默认处理之前执行一些操作时使用
    • post可以在执行默认处理之后执行一些操作时使用

save方法