PHP code example of discustecnologia / pdf-report-bundle
1. Go to this page and download the library: Download discustecnologia/pdf-report-bundle library . Choose the download type require .
2. Extract the ZIP file and open the index.php.
3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
discustecnologia / pdf-report-bundle example snippets
public function registerBundles()
{
$bundles = [
// ...
new DiscusTecnologia\PdfReportBundle\DiscusTecnologiaPdfReportBundle(),
// ...
];
...
}
return $this->render(...);
$pdfReport = $this->get('discus-tecnologia.pdf-report');
$pdfReport->setHeader('default/header.twig');
$pdfReport->setFooter('default/footer.twig');
$pdfReport->setMargins(20, 20, 20, 20);
$pdfReport->addPages('default/testReport.twig', []);
return $pdfReport->generate();
{% for i in ((pdfReportPageNumber -1) * 4)..(((pdfReportPageNumber * 4)-1) < (obj|length - 1) ? ((pdfReportPageNumber * 4)-1) : obj|length-1) %}
<div>{{ obj[i] }}</div>
{% endfor %}
namespace AppBundle\Controller;
use Sensio\Bundle\FrameworkExtraBundle\Configuration\Route;
use Symfony\Bundle\FrameworkBundle\Controller\Controller;
use Symfony\Component\HttpFoundation\Request;
use DiscusTecnologia\PdfReportBundle\Service\PdfReport;
class DefaultController extends Controller
{
/**
* @Route("/", name="homepage")
*/
public function indexAction(Request $request)
{
$pdfReport = $this->get('discus-tecnologia.pdf-report');
$pdfReport->setSavePDF("/var/tmp/pdfreport.pdf");
$pdfReport->setHeader('default/header.twig');
$pdfReport->setFooter('default/footer.twig');
$pdfReport->setMargins(20, 20, 20, 20);
//Default size is A4. You can use A0, A1, A2, A3, A4, A5 or pass custom size array as [width, height]
$pdfReport->setPageSize(PdfReport::A3);
$pdfReport->setGrayscale(true);
$pdfReport->setOrientationLandscape();
$pdfReport->setTotalPages(2);
$pdfReport->setHeaderHeight(40);
$pdfReport->setFooterHeight(40);
$pdfReport->setCss("#footer p {
font-size: 10px;
text-align: center;
background: #ccc;
}
#content {
width: 168mm;
/*border: 1px #000000 solid;*/
}
p {
/*border: 1px #FF0000 solid;*/
max-width: 168mm;
text-indent: 30px;
margin-bottom: 15px;
line-height: 20px;
font-size: 14px;
text-align: justify;
}");
$pdfReport->addPages('default/testeRel.twig', ['obj' => ['a', 'b', 'c', 'd', 'e', 'f', 'g'] ]);
return $pdfReport->generate();
//return $pdfReport->renderHTML(); //use for debug
}
}