carlescliment / html2pdf-bundle
Integrates the html2pdf REST service in Symfony 2
Installs: 575
Dependents: 0
Suggesters: 0
Security: 0
Stars: 1
Watchers: 2
Forks: 0
Open Issues: 0
Type:symfony-bundle
Requires
- php: >5.3.2
- ext-curl: *
- carlescliment/curl: 1.0.1
Requires (Dev)
- phpunit/phpunit: 3.*@stable
- symfony/browser-kit: 2.3.*
- symfony/finder: 2.3.*
- symfony/form: 2.3.*
- symfony/framework-bundle: 2.3.*
This package is not auto-updated.
Last update: 2024-11-09 15:36:50 UTC
README
This is a Symfony 2 client for the Html2Pdf REST Service.
Installation
Include the bundle in your composer.json file.
"require": {
...
"carlescliment/html2pdf-bundle": "dev-master"
}
Modify your AppKernel:
public function registerBundles() { $bundles = array( // ... new carlescliment\Html2PdfServiceBundle\carlesclimentHtml2PdfServiceBundle(), );
Set the bundle configuration in your config.yml
:
parameters: html2pdf.host: http://html2pdf.mydomain.com html2pdf.port: 80
Execute php composer.phar update carlescliment/html2pdf-bundle
Usage
From your controller, render the template and pass it to the service:
class SampleController extends Controller { public function toPdfAction() { $view = $this->renderView('YourBundle:Sample:toPdf.html.twig'); $bridge = $this->get('html2pdf.bridge'); $options = array('footer-left' => 'my footer'); return $bridge->getFromHtml($view, 'document_name', $options); } }
Testing
Execute phpunit in the bundle's root dir to run the tests.
If you need functional or integration tests and don't want to make real curl requests, you can use the NullProtocol in order to disable them. Put this configuration in your config_test.yml file.
html2pdf.protocol:
class: carlescliment\Html2PdfServiceBundle\Protocol\NullProtocol
TO-DO
- Port setting is currently being ignored