ghans/ mpdf-laravel-wrapper
基于mpdf/mpdf修改,适用于laravel 5.*
Requires
- php: ^5.6 || ~7.0.0 || ~7.1.0 || ~7.2.0
- ext-gd: *
- ext-mbstring: *
- paragonie/random_compat: ^1.4|^2.0
- psr/log: ^1.0
- setasign/fpdi: 1.6.*
Requires (Dev)
- mockery/mockery: ^0.9.5
- phpunit/phpunit: ^5.0
- squizlabs/php_codesniffer: ^2.7.0
- tracy/tracy: ^2.4
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
- dev-development
- 7.0.2
- v7.0.1
- v7.0.0
- v7.0.0-RC4
- v7.0.0-RC3
- v7.0.0-RC2
- v7.0.0-RC1
- v7.0.0-beta2
- v7.0.0-beta1
- 6.1.x-dev
- v6.1.4
- v6.1.3
- v6.1.2
- v6.1.2a
- v6.1.1
- v6.1.0
- v6.0.0
- v6.0-beta
- v5.7.4
- v5.7.4a
- v5.7.3
- v5.7.3a
- v5.7.2
- v5.7.1
- v5.7.0
- v5.6.1
- v5.5.1
- dev-bugfix/instanciacion
- dev-test
- dev-master
- dev-barcode-hide-numbers
This package is auto-updated.
Last update: 2024-09-28 11:58:17 UTC
README
mPDF 是一个 PHP 库,可以从 UTF-8 编码的 HTML 生成 PDF 文件。
它基于 FPDF 和 HTML2FPDF (见 CREDITS),增加了一些功能。mPDF 由 Ian Back 编写,并使用 GNU GPL v2 许可证发布。
注意:如果您在此文件在 mPDF Github 仓库主页或 Packagist 上查看,请注意默认仓库分支是
development
,这可能与最新稳定版本不同。
要求
mPDF 7.0 需要 PHP ^5.6 || ~7.0.0 || ~7.1.0 || ~7.2.0
。PHP 的 mbstring
和 gd
扩展必须加载,并且需要 Laravel 5.x。
对于一些高级功能(如压缩输出和嵌入资源如字体使用 zlib
,生成条形码使用 bcmath
,字符集转换和 SVG 处理使用 xml
)可能需要其他扩展。
mPDF 在使用单线程服务器(如 php -S
)获取外部 HTTP 资源时存在一些问题。建议使用适当的 Web 服务器,如 nginx (php-fpm) 或 Apache。
支持我们
请考虑通过捐赠任何金额来支持 mPDF 的发展。捐赠按钮可以在文档的 主页 上找到。
安装
官方安装方法是通过 composer 及其 Packagist 软件包 mpdf/mpdf。
$ composer require ghans/mpdf-laravel-wrapper:dev-development
对于 Laravel <5.5,在文件 config/app.php 中包含
'providers' => [ ... /* * Package Service Providers... */ ... Mpdf\Providers\PDFServiceProvider::class, ...
在别名部分包含
'aliases'=>[ ... "mpdf"=> Mpdf\Providers\PDFFacade::class, ...
用法
自 7.0 版本以来,库的简单用法如下
<?php use mpdf; mpdf::writeHTML('<h1>Hello world!</h1>'); mpdf::output();
这将作为 application/pdf
内容类型将 PDF 输出为内联到浏览器。
设置和配置
所有 配置指令 都可以通过构造函数的 $config
参数设置。
建议通过 tempDir
配置变量设置自己的临时目录。该目录必须对使用 mPDF 的用户具有写入权限(建议模式为 775
)。
警告: mPDF 将清理临时目录中的旧临时文件。请选择仅用于 mPDF 的路径。
<?php $mpdf = new \Mpdf\Mpdf(['tempDir' => __DIR__ . '/tmp']);
默认情况下,临时目录将位于 vendor 目录内,并且将具有从 post_install
composer 脚本获得的正确权限。
有关自定义临时目录的更多信息,请参阅 Folder for temporary files 部分的说明。
如果您遇到问题,请参阅手册中的 troubleshooting 部分。
在线手册
在线手册可在 https://mpdf.github.io/ 获得。
对于一般问题或故障排除,请使用 Stack Overflow 上的 mpdf 标签(而不是项目的 issue 跟踪器)。
贡献
在提交问题和拉取请求之前,请先阅读CONTRIBUTING.md文件。
单元测试
mPDF的单元测试使用PHPUnit进行。
要开始,请在mPDF根目录下从命令行运行composer install
(您需要先安装composer)。
要执行测试,请在mPDF根目录下从命令行运行vendor/bin/phpunit
。
对于编写mPDF单元测试的任何帮助都十分欢迎。如果您想帮忙,请注意,位于/tests/
目录下的任何PHP文件在单元测试时都将被自动加载。