abdullah-karam / laravel-svg
此包用于根据包含两个单词的任何字符串生成SVG,并提供一些美观的选项
v1.2.2
2024-03-14 19:04 UTC
Requires
- php: ^8.0
README
Laravel SVG
Laravel包,用于从用户的完整姓名或首字母生成SVG图像,并提供一些酷炫的自定义选项。
要求
- 此包需要PHP 8.0或更高版本。
安装
您可以通过运行以下命令使用Composer安装此包
composer require abdullah-karam/laravel-svg
用法
示例(1)
要从用户的完整姓名生成SVG图像,您可以在LaravelSvg外观上使用svgFor()
方法。该svgFor()
方法接受一个参数,即用户的完整姓名。以下是如何使用svgFor()
方法的示例
<?php namespace App\Http\Controllers; use Abdullah\LaravelSvg\Facades\LaravelSvg; use App\Models\User; class UserController extends Controller { public function generateSvg(User $user) { $svgDetails = LaravelSvg::svgFor(words: $user->fullname)->generate(); dd($svgDetails); } }
这将生成一个带有用户首字母居中的SVG图像。
array:6 [▼ "name" => "64af002c8ba51.svg" "path" => "users/64af002c8ba51.svg" "full_path" => "http://:8000/storage/users/64af002c8ba51.svg" "mime_type" => "image/svg+xml" "size" => 422 "disk" => "public" ]
示例(2)
您还可以使用LaravelSvg外观上的svgFor()
方法从用户的首字母生成带有标志文本的SVG图像。该svgFor()
方法接受一个参数,即用户的首字母,并使用方法logoText()
进行链式调用。以下是如何使用的示例
<?php namespace App\Http\Controllers; use Abdullah\LaravelSvg\Facades\LaravelSvg; use App\Models\User; class UserController extends Controller { public function generateSvg(User $user) { $svgDetails = LaravelSvg::svgFor(words: $user->fullname) ->logoText()->generate(); dd($svgDetails); } }
这将生成一个带有用户首字母居中和默认标志文本的SVG图像。如果您想更改标志文本,可以使用带有参数的logoText()
方法,例如logoText('logo')
,或者在一开始就在config/laravel-svg.php
文件中定义它。
array:6 [▼ "name" => "64af03da5f35c.svg" "path" => "users/64af03da5f35c.svg" "full_path" => "http://:8000/storage/users/64af03da5f35c.svg" "mime_type" => "image/svg+xml" "size" => 414 "disk" => "public" ]
配置
您可以使用以下命令发布配置文件
php artisan vendor:publish --provider="Abdullah\LaravelSvg\LaravelSvgServiceProvider" --tag="config"
这是发布后的配置文件的内容
<?php return [ 'folder' => 'storage', ## default folder name in public folder 'default_logo_text' => 'logo', ## default logo text 'logo_text_color' => '#000000', 'avatar_text_color' => '#f1c40f', 'avatar_background_color' => '#ffffff', 'default_svg_path' => 'users', ## folder name will be created in public/{folder}/users 'hash_svg_name' => true ## if you want to hash svg name by default true ];
您可以按需更改所有配置选项。
许可证
此包是开源软件,根据MIT许可证(MIT)许可。有关更多信息,请参阅许可证文件。
联系
如果您有任何问题或反馈,请随时通过电子邮件abdallakaramdev@gmail.com联系我。