eadesignro / mpdf
A PHP class to generate PDF files from HTML with Unicode/UTF-8 and CJK support
Requires
- php: >=5.4.0
- ext-mbstring: *
- setasign/fpdi: 1.6.*
Requires (Dev)
- phpunit/phpunit: ^4.7
Suggests
- ext-zlib: Needed for compression of embedded resources, such as fonts
- dev-development
- v7.2.1
- 7.1.9.1
- 7.0.x-dev
- 7.0.1.x-dev
- v7.0.1
- 6.1.x-dev
- v6.1.2
- 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-feature/marketplace-version
- dev-master
- dev-test
- dev-lint
- dev-travis
- dev-barcode-numbers
- dev-refactor
- dev-barcode-numbers-pr
- dev-constructor
This package is auto-updated.
Last update: 2024-11-24 22:19:30 UTC
README
mPDF is a PHP class which generates PDF files from UTF-8 encoded HTML. It is based on FPDF and HTML2FPDF (see CREDITS), with a number of enhancements. mPDF was written by Ian Back and is released under the GNU GPL v2 licence.
Note: If you are viewing this file on mPDF Github repository homepage, please note that the default repository branch is
development
which can differ from the last stable release.
Requirements
mPDF 7.0 requires PHP ^5.6 || ~7.0.0
. PHP mbstring
and gd
extensions have to be loaded.
PHP ~7.1.0
should be compatible.
Additional extensions may be required for some advanced features such as zlib
for compression of embedded
resources such as fonts or bcmath
for generating barcodes.
Installation
Official installation method is via composer and its packagist package mpdf/mpdf.
$ composer require mpdf/mpdf
Usage
The simplest usage of the library would be as follows:
<?php require_once __DIR__ . '/vendor/autoload.php'; $mpdf = new \Mpdf\Mpdf(); $mpdf->WriteHTML('<h1>Hello world!</h1>'); $mpdf->Output();
This will output the HTML inline to the browser.
Setup & Configuration
All configuration directives can
be set by the $config
parameter of the constructor.
It is recommended to set one's own temporary directory via tempDir
and fontTempDir
configuration variables.
The directory must have write permissions (mode 775
is recommended).
<?php $mpdf = new \Mpdf\Mpdf(['tempDir' => __DIR__ . '/tmp']);
By default, the temporary directory will be inside vendor directory and will have correct permissions from
post_install
composer script.
For more information about custom temporary directory see the note on Folder for temporary files in the section on Installation & Setup in the manual.
If you have problems, please read the section on troubleshooting in the manual.
Online manual
Online manual is available at https://mpdf.github.io/.
Contributing
See CONTRIBUTING.md file in the project.
Unit Testing
Unit testing for mPDF is done using PHPUnit.
To get started, run composer install
from the command line while in the mPDF root directory
(you'll need composer installed first).
To execute tests, run vendor/bin/phpunit
from the command line while in the mPDF root directory.
Any assistance writing unit tests for mPDF is greatly appreciated. If you'd like to help, please
note that any PHP file located in the /tests/
directory will be autoloaded when unit testing.