laravel 打印,laravel打印运行日志

项目最后两天需要将HTML页面转换成PDF文件进行打印,在网上查了很多资料。我使用过两个扩展包laravel-dompdf和laravel-snappy,我个人认为laravel-snappy更容易使用。


1.使用laravel-dompdf扩展包


1.安装扩展包


通过作曲家安装


Composer需要barryvdh/laravel-dompdf2。将ServiceProvider添加到config/appphp.ini中的providers数组中


BarryvdhDomPDFServiceProvider:class,3.在config/appphp中向别名数组添加外观。


39;=>;BarryvdhDomPDFFacade:class,4.二手


您可以创建dompdf实例,加载HTML字符串、文件或视图,然后使用Stream方法将其显示在浏览器中,使用save方法将其保存到文件,或使用download方法下载。


$pdf=App:make39;$pdf-gt;loadHTML39;返回$pdf-gt;stream;您还可以使用外观并在使用之前拥有PDF。


$pdf=PDF:loadView39;$data;return$pdf-gt;download39;也可以链式操作


returnPDF:loadFilepublic_path39;-gt;save39;-gt;stream39;您可以更改方向和纸张尺寸,以及隐藏或显示错误。PDF:loadHTML$html-gt;setPaper39;39;-gt;setWarningsfalse-gt;save39;其他基本使用和配置请参考topdf支持文档。因此,请先安装Wkhtmltopdf。


方法一下载wkhtmltopdf安装包


wkhtmltopdf下载地址topdforg/downloadshtml


只需在Windows上直接下载并安装即可。请小心地将其安装在已知位置。这条路径稍后会有用。


我的安装在G:wk目录下


bin目录包含两个依赖软件wkhtmltoimage和wkhtmltopdf。


Linux下载并解压完成后,将文件移动到/usr/local/bin。


方法2通过Composer安装


我们以Linux系统为例。


32位$需要作曲家h4cc/wkhtmltopdf-i386012x$需要作曲家h4cc/wkhtmltoimage-i386012x,64位$需要作曲家h4cc/wkhtmltopdf-amd64012x$需要作曲家h4cc/wkhtmltoimage-amd64012xuname-a命令系统位计数检查并创建cpVendor/h4cc/wkhtmltoimage-amd64/bin/wkhtmltoimage-amd64/usr/local/bin/cpVendor/h4cc/wkhtmltopdf-amd64/bin/wkhtmltopdf-amd64/usr/local/bin/。可执行文件chmod+x/usr/local/bin/wkhtmltoimage-amd64chmod+x/usr/local/bin/wkhtmltopdf-amd64在Linux上使用此第三方插件需要多个库的支持。


yuminstalllibXrenderyum安装libfontconfig2,安装laravel-snappy扩展包


作者需要barryvdh/laravel-snappy3。将ServiceProvider添加到config/appphp.ini中的providers数组中


BarryvdhSnappyServiceProvider:class,4.在config/appphp中向别名数组添加外观。


39;=>;BarryvdhSnappyFacadesSnappyPdf:class,39;=>;BarryvdhSnappyFacadesSnappyImage:类,5。创建配置文件


对于更高版本的laravel如55及以上版本,请忽略上面的步骤3和4,直接到这里创建配置文件phpartisanVendor:publish--provider=34;此命令在config/snappyphp.ini中创建一个配置文件。


具体配置如下


lt;php返回[39;=>;[39;=>;正确,39;=>;env39;39;//Linux配置路径//39;=>;env39;39;//窗口配置path39;=>;假,39;=>;[],39;=>;[]、]、39;=>;[39;=>;正确,39;=>;//Linux配置路径//39;=>;env39;39;//Windows配置路径39;=>;假,39;=>;[],39;=>;[]、]、];6用法类似。如何使用dompdf


先介绍一下


使用PDF、使用SnappyImage、创建PDF文件


您可以使用Facade加载HTML字符串、文件或视图,然后使用Stream方法将其显示在浏览器中,使用save方法将其保存到文件,或使用download方法下载它。


$pdf=PDF:loadView39;$data;return$pdf-gt;download39;也可以链式操作


returnPDF:loadFilepublic_path39;-gt;save39;-gt;stream39;您可以更改方向和纸张尺寸,以及隐藏或显示错误。


PDF:loadHTML$html-gt;setPaper39;39;-gt;setWarningsfalse-gt;save39;创建照片


$pdf=SnappyImage:loadView39;$data;return$pdf-gt;download39;7.解决了中英文字符乱码的题


方法一


将宋体或其他中文字体添加到/usr/share/fonts/。


方法二


安装中文字体


yuminstallipa-gothic-fontsipa-mincho-fontsipa-pgothic-fontsipa-pmincho-fonts在方法中转义为utf-8


$pdf-gt;设置选项39;39;这是一个演示测试示例


控制器层


lt;php命名空间AppHttpControllersV2;使用IlluminateHttpRequest;使用AppResponsesRes;使用IlluminateSupportFacadesValidator;使用PDF;使用SnappyImage;使用该应用程序;使用IlluminateSupportFacadesResponse;使用PdfController类扩展控制器/包装器使用嵌入的HTML生成PDF文件,然后在线进行预览/发布功能pdf2/或使用外观使用刀片模板引擎,生成pdf文件/发布功能pdf3/可以使用链接方法使用URL获取内容,然后创建pdf文件/公共函数pdf4/使用刀片模板创建图像,文件/公共函数img1创建视图层


lt;h1gt;lt;/h1gt;lt;h2gt;lt;/h2gt;lt;h3gt;lt;/h3gt;


参考文献包括


laravel-dompdf包


laravel-snappy包


关于laravel 打印和laravel打印运行日志的相关题已解完毕,诸位网友记得持续关注本站。

除非特别注明,本站所有文字均为原创文章,作者:admin

No Comment

留言

电子邮件地址不会被公开。 必填项已用*标注

感谢你的留言。。。