DOMPDFModule
A Zend Framework module for Dompdf
Install / Use
/learn @raykolbe/DOMPDFModuleREADME
DOMPDFModule
The DOMPDF module integrates the DOMPDF library with Zend Framework 2 with minimal effort on the consumer's end.
Requirements
Installation
Installation of DOMPDFModule uses PHP Composer. For more information about PHP Composer, please visit the official PHP Composer site.
Installation steps
-
cd my/project/directory -
create a
composer.jsonfile with following contents:{ "require": { "dino/dompdf-module": "dev-master" } } -
install PHP Composer via
curl -s http://getcomposer.org/installer | php(on windows, download http://getcomposer.org/installer and execute it with PHP) -
run
php composer.phar install -
open
my/project/directory/config/application.config.phpand add the following key to yourmodules:'DOMPDFModule',
Configuration options
You can override options via the dompdf_module key in your local or global config files. See DOMPDFModule/config/module.config.php for config options.
Usage
<?php
namespace Application\Controller;
use Zend\Mvc\Controller\AbstractActionController;
use DOMPDFModule\View\Model\PdfModel;
class ReportController extends AbstractActionController
{
public function monthlyReportPdfAction()
{
$pdf = new PdfModel();
$pdf->setOption('fileName', 'monthly-report'); // "pdf" extension is automatically appended
$pdf->setOption('display', PdfModel::DISPLAY_ATTACHMENT); // Triggers browser to prompt "save as" dialog
$pdf->setOption('paperSize', 'a4'); // Defaults to "8x11"
$pdf->setOption('paperOrientation', 'landscape'); // Defaults to "portrait"
// To set view variables
$pdf->setVariables(array(
'message' => 'Hello'
));
return $pdf;
}
}
Development
So you want to contribute? Fantastic! Don't worry, it's easy. Local builds, tests, and code quality checks can be executed using Docker.
Quick Start
- Install Docker CE.
- Run the following from your terminal:
docker build -t dino/dompdf-module .
docker run -v composer-cache:/var/lib/composer -v ${PWD}:/opt/app dino/dompdf-module
Super easy, right? Here's a quick walk through as to what's going on.
docker build -t dino/dompdf-module .builds a docker image that will be used for each run (i.e. each timedocker runis executed) and tags it with the namedino/dompdf-module.docker run -v composer-cache:/var/lib/composer -v ${PWD}:/opt/app dino/dompdf-moduleruns the default build in a new Docker container derived from the image taggeddino/dompdf-module. The root of the project and PHP Composer cache volume are mounted so that artifacts generated during the build process are available to you on your local machine.
Note: You only need to run the first command once in order to build the image. The second command is what executes the build (build, tests, code quality checks, etc.).
Other Supported PHP Versions
By default, builds executed using Docker are done so using the latest stable version of PHP. If you're adventurous you can execute builds against other supported versions of PHP.
PHP 5.6
docker build --build-arg PHP_VERSION=5.6 --tag dino/dompdf-module-php56 .
docker run -v composer-cache:/var/lib/composer -v ${PWD}:/opt/app dino/dompdf-module-php56
To-do
- Add command line support.
Related Skills
node-connect
343.1kDiagnose OpenClaw node connection and pairing failures for Android, iOS, and macOS companion apps
frontend-design
90.0kCreate distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, or applications. Generates creative, polished code that avoids generic AI aesthetics.
summarize
343.1kSummarize or extract text/transcripts from URLs, podcasts, and local files (great fallback for “transcribe this YouTube/video”).
feishu-doc
343.1k|

