choowx/satori-php

运行 Satori —— 将 HTML 和 CSS 转换为 SVG 的智能库,使用 PHP 实现

资助包维护!
choowx

v0.2.3 2024-07-22 09:05 UTC

This package is not auto-updated.

Last update: 2024-09-16 10:13:44 UTC


README

Satori

运行 Satori —— 将 HTML 和 CSS 转换为 SVG 的智能库,使用 PHP 实现

Latest Version on Packagist Tests Total Downloads

Satori —— 将 HTML 和 CSS 转换为 SVG 的智能库。

此包使您能够使用 PHP 运行 Satori。

安装

您可以通过 composer 安装此包

composer require choowx/satori-php

此包依赖于系统上可用的 satorihtml-react-parser js 包。在大多数情况下,您可以在项目中运行以下命令来完成此操作。

npm install satori
npm install html-react-parser

使用方法

use Choowx\Satori\Satori;

$svg = Satori::html('<div style="color: black">hello, world</div>')->convert();
// $svg = '<svg width="1200" height="630" viewBox="0 0 1200 630" xmlns="http://www.w3.org/2000/svg"><path fill="black"...

可以配置 svg 的宽度和高度

use Choowx\Satori\Satori;

$svg = Satori::html('<div style="color: black">hello, world</div>')
    ->width(600)
    ->height(315)
    ->convert();
// $svg = '<svg width="600" height="315" viewBox="0 0 600 315"...

使用文件系统中可用的自定义字体

Satori 目前支持三种字体格式:TTF、OTF 和 WOFF。请注意,目前不支持 WOFF2。

use Choowx\Satori\Font;
use Choowx\Satori\Satori;

$svg = Satori::html('<div style="color: black">hello, world</div>')
    ->withFonts([
        Font::path('/path/to/Roboto-Regular.ttf')
            ->name('Roboto')
            ->weight(400)
            ->style('regular'),
        Font::path('/path/to/Roboto-Bold.ttf')
            ->name('Roboto')
            ->weight(700)
            ->style('bold'),
    ])
    ->convert();

测试

composer test

变更日志

有关最近更改的更多信息,请参阅 变更日志

贡献

有关详细信息,请参阅 贡献指南

安全漏洞

有关如何报告安全漏洞的详细信息,请参阅 我们的安全策略

鸣谢

许可

MIT 许可证(MIT)。有关更多信息,请参阅 许可文件