snono/ pdf-builder
一个PHP类,可以从HTML生成支持Unicode/UTF-8和CJK的PDF文件
Requires
- php: ^7.1.3
- ext-bcmath: *
- mpdf/mpdf: ^8.0
Requires (Dev)
- phpunit/phpunit: ^5.0
- squizlabs/php_codesniffer: ^2.7.0
Suggests
- ext-bcmath: Needed for generation of some types of barcodes
- ext-xml: Needed mainly for SVG manipulation
- ext-zlib: Needed for compression of embedded resources, such as fonts
This package is not auto-updated.
Last update: 2024-09-26 16:06:18 UTC
README
为Laravel生成PDF报告(如发票、收据)
要求
- php >= 5.4.0
- Mpdf/Mpdf
- illuminate/support
- illuminate/view
使用composer安装
composer require snono/pdf-builder
发布配置
php artisan vendor:publish
示例用法:首先您需要添加导入类ReportBuilder
use Snono\PDFBuilder\Builder\Classes\PDFBuilder;
请看下面的示例代码
$invoice = PDFBuilder::make() ->setTemplate('default') ->setData($data) ->show();
配置
要更改PDFBuilder的默认配置,请更新laravel项目配置目录中的pdf.conf
文件
方法
设置模板
使用setTemplate()设置Laravel的HTML模板blade,默认路径为resources/view/pdf-builder
示例
$pdf = PDFBuilder::make() ->setTemplate('pdf') ->setData($data) ->show()
设置模板的CSS
使用setCssUrls()设置CSS样式表文件的URL字符串数组
示例
$pdf = PDFBuilder::make() ->setCssUrls(array('https://maxcdn.bootstrap.ac.cn/bootstrap/3.3.7/css/bootstrap.min.css')) ->setTemplate('pdf') ->setData($data) ->show()
设置方向性
使用setDirectionality()设置语言的朝向,字符串选项为('ltr' 或 'rtl')
示例
$pdf = PDFBuilder::make() ->setCssUrls(array('https://maxcdn.bootstrap.ac.cn/bootstrap/3.3.7/css/bootstrap.min.css')) ->setTemplate('pdf') ->setData($data) ->setDirectionality('rtl') ->show();
为整个文档设置页眉/页脚
使用setFooter()和/或SetHeader()在写入文档之前设置页眉/页脚,文本字符串由|
分隔,将在页面的左/中/右边距设置页眉
示例
$pdf = PDFBuilder::make() ->setCssUrls(array('https://maxcdn.bootstrap.ac.cn/bootstrap/3.3.7/css/bootstrap.min.css')) ->setTemplate('pdf') ->setHeader('Document Title') ->setFooter('Document Title|{PAGENO}|{DATE j-m-Y}') ->setData($data) ->setDirectionality('rtl') ->show();
从HTML字符串设置整个文档的页眉/页脚
使用setHTMLHeader()和/或setHTMLFooter()在写入文档之前设置HTML页眉/页脚。
描述
void setHTMLHeader ( string $html [, string $side [, boolean $write ]])
void setHTMLFooter ( string $html [, string $side [, boolean $write ]])
参数
$header 此参数指定页眉内容作为有效的HTML代码字符串。
默认: 空白
$side 指定是否为双面文档中的奇数页或偶数页设置页眉。
值(大小写敏感)
'O' - 为奇数页设置页眉
'E' - 为偶数页设置页眉
默认: 空白,设置'O'
$write 如果为true,它将强制立即将页眉写入当前页面。如果在添加新页面后设置页眉,请使用。
默认: 假
生成PDF文件
最终化文档并将其发送到指定的目的地,您可以使用以下方法之一
$pdf->download($filename)
发送到浏览器并使用由$filename指定的名称强制文件下载
$pdf->show($filename)
将文件内嵌到浏览器中。
$pdf->save( $filename)
使用由$filename指定的名称(可能包含路径)保存到本地文件。
$result = $pdf->toString()
返回文档作为字符串。