typesetsh/laravel-wrapper

适用于laravel 7-11的Typeset.sh包装器

11.0.0 2024-03-13 11:18 UTC

README

适用于Laravel 7, 8, 9, 10和11的Typeset.sh包装器

这是一个laravel的typeset.sh包装器,可以让您轻松地在laravel项目中配置和使用typeset.sh。Typeset.sh是一个用PHP编写的printcss布局和渲染引擎。

安装

请确保您可以从typeset.sh访问有效的composer令牌。

将typeset.sh包仓库添加到composer,并通过composer安装包

composer config repositories.typesetsh composer https://packages.typeset.sh
composer require typesetsh/laravel-wrapper

由于包自动发现,包将自动在您的应用程序中找到。

使用方法

包装器的工作方式与视图类似。技术上,它会包装视图并使用其HTML输出,将其渲染为PDF。

外观

您可以使用外观模式。类似于渲染视图。

use Typesetsh\LaravelWrapper\Facades\Pdf;

Route::get('/invoice/print', function () {
    $invoice = new stdClass();

    return Pdf::make('invoice', ['invoice' => $invoice]);
});

助手

或者,您可以使用助手。

Route::get('/invoice/print', function () {
    $invoice = new stdClass();

    return Typesetsh\pdf('invoice', ['invoice' => $invoice]);
});

或强制下载

Route::get('/invoice/print', function () {
    $invoice = new stdClass();

    return Typesetsh\pdf('invoice', ['invoice' => $invoice])->forceDownload('invoice.pdf');
});

配置

Typeset.sh不需要太多的配置。唯一重要的是要理解的是,默认情况下,typeset.sh不允许包含任何外部资源(图像、CSS、字体等),除非指定。

有关更多信息,请参阅配置文件config/typesetsh.php。默认情况下,typeset.sh可以访问公共目录和任何http(s)资源。

您还可以使用以下命令发布文件:

php artisan vendor:publish --provider="Typesetsh\LaravelWrapper\ServiceProvider"

许可协议

此扩展受MIT许可证的约束。

然而,它需要一个typeset.sh版本才能工作。