一个PHP类,用于从HTML生成支持Unicode/UTF-8和CJK的PDF文件,适用于donut

v7.0.0-beta2 2017-03-12 18:05 UTC

README

mPDF是一个PHP库,用于从UTF-8编码的HTML生成PDF文件。

它基于FPDFHTML2FPDF(见CREDITS),并进行了许多增强。mPDF由Ian Back编写,并使用GNU GPL v2许可证发布。

Build Status

注意:如果您在mPDF GitHub仓库主页或Packagist上查看此文件,请注意默认仓库分支是development,这可能不同于最新稳定版。

要求

mPDF 7.0需要PHP ^5.6 || ~7.0.0 || ~7.1.0。必须加载PHP的mbstringgd扩展。

对于一些高级功能(如用于输出和嵌入资源的压缩和字体等)可能还需要其他扩展,例如zlib、用于生成条形码的bcmath以及用于字符集转换和SVG处理的xml

支持我们

请考虑通过任何价值的捐赠来支持mPDF的开发。可以在文档主页找到捐赠按钮

安装

官方安装方法是通过composer及其packagist包mpdf/mpdf

$ composer require blekerfeld/mpdf

用法

自7.0版本以来,库的最简单用法如下

<?php

require_once __DIR__ . '/vendor/autoload.php';

$mpdf = new \Mpdf\Mpdf();
$mpdf->WriteHTML('<h1>Hello world!</h1>');
$mpdf->Output();

这将输出PDF,并将其作为application/pdf内容类型内联到浏览器中。

设置 & 配置

可以通过构造函数的$config参数设置所有配置指令

建议通过tempDir配置变量设置自己的临时目录。目录必须具有对mPDF用户(通常是cliwebserverfpm)的写权限(推荐模式为775)。

<?php

$mpdf = new \Mpdf\Mpdf(['tempDir' => __DIR__ . '/tmp']);

默认情况下,临时目录将位于vendor目录内,并由post_install composer脚本设置正确的权限。

有关自定义临时目录的更多信息,请参阅Folder for temporary files部分的说明。

如果遇到问题,请参阅手册中的故障排除部分。

在线手册

在线手册可在https://mpdf.github.io/找到。

贡献

请参阅项目中的CONTRIBUTING.md文件。

单元测试

mPDF的单元测试使用PHPUnit完成。

要开始使用,请在 mPDF 根目录下通过命令行运行 composer install(您需要先安装 composer)。

要执行测试,请在 mPDF 根目录下通过命令行运行 vendor/bin/phpunit

对于编写 mPDF 的单元测试,任何帮助都非常受欢迎。如果您想帮忙,请注意,任何位于 /tests/ 目录下的 PHP 文件在执行单元测试时都会被自动加载。