kodebyraaet/prince

此包已被弃用,不再维护。未建议替代包。
关于此包的最新版本(0.0.7)没有可用的许可证信息。

Prince 库的简单包装器

0.0.7 2019-11-13 11:30 UTC

This package is auto-updated.

Last update: 2022-08-04 12:25:53 UTC


README

Laravel PrinceXML 包装器是一个 Laravel 4.2 包,用于包装 http://www.princexml.com/ PDF 生成器。

安装

需要安装 "prince" 可执行文件。

Install the "prince" executable from http://www.princexml.com/download/.

运行以下命令将 Kodebyraaet/Prince 添加到下载和安装。

composer require kodebyraaet/prince

将以下.env变量添加到您的.env.*.php。

PRINCE_EXECUTABLE_PATH=/path/to/prince

将以下内容分别添加到您的app.php文件的服务提供者和别名部分。别名/外观是可选的。

'Kodebyraaet\Prince\PrinceServiceProvider',
'Prince'            => 'Kodebyraaet\Prince\Facades\Prince',

使用

Kodebyraaet\Prince\Prince 类已绑定到 Laravel IoC 作为 Kodebyraaet\Prince\PrinceInterface,因此在每个 IoC 自动解析依赖的地方(例如控制器)这是使用 Prince 的首选方式。您还可以选择使用 $app->make(...) 或 App::make(...); 您还可以在任何地方直接使用 \Prince 或 Kodebyraaet\Prince\Facades\Prince。

方法

所有方法都是可链式的,因此您可以在处理 Prince 文档的过程中动态地添加更多和更多的标记。例如

$prince->html('<html><body>')
    ->html('<div><h1>Appending more content.</h1></div>
    ->html('</body></html>');

html 方法接受一个字符串作为 html 并将其追加到内部存储的标记。

$prince->html('<div>Some HTML</div>');

view 方法接受一个尚未渲染的 Laravel 视图,渲染它并将其追加到内部存储的标记。

$prince->view(View::make('someview',['somevar' => $somevalue]));

download 方法返回一个 Response 对象,可以将其返回给客户端以在浏览器中查看或下载。例如,在控制器中,您可以为直接查看生成的 PDF 返回此对象。

return $prince->html('<html>...</html>')->download();

store 方法需要一个路径并在成功时返回相同的路径。

$pdfPath = $prince->html('<html>...</html>')->store(public_path('/pdf/example.pdf'));