 |
 |
|
|
 |
| |
 |
Downloads > Add-On |
 |
|
 |
| |
|
|
|
|
| |
JavaScript support
InformationsAuthor: Johannes Güntert License: Freeware
DescriptionThis extension allows to embed some JavaScript inside the PDF. The code is executed on document
opening.
The Acrobat JavaScript reference is available here.
Source
<?php require('fpdf.php');
class PDF_Javascript extends FPDF {
var $javascript; var $n_js;
function IncludeJS($script) { $this->javascript=$script; }
function _putjavascript() { $this->_newobj(); $this->n_js=$this->n; $this->_out('<<'); $this->_out('/Names [(EmbeddedJS) '.($this->n+1).' 0 R ]'); $this->_out('>>'); $this->_out('endobj'); $this->_newobj(); $this->_out('<<'); $this->_out('/S /JavaScript'); $this->_out('/JS '.$this->_textstring($this->javascript)); $this->_out('>>'); $this->_out('endobj'); }
function _putresources() { parent::_putresources(); if (!empty($this->javascript)) { $this->_putjavascript(); } }
function _putcatalog() { parent::_putcatalog(); if (isset($this->javascript)) { $this->_out('/Names <</JavaScript '.($this->n_js).' 0 R>>'); } } } ?>
|
ExampleThis example shows how to start printing as soon as the document opens. It is possible to
launch the print dialog (pass true to the AutoPrint() method), or directly print with default
parameters (pass false).
<?php define('FPDF_FONTPATH', 'font/'); require('fpdf_js.php');
class PDF_AutoPrint extends PDF_Javascript { function AutoPrint($dialog=false) { //Embed some JavaScript to show the print dialog or start printing immediately $param=($dialog ? 'true' : 'false'); $script="print($param);"; $this->IncludeJS($script); } }
$pdf=new PDF_AutoPrint(); $pdf->Open(); $pdf->AddPage(); $pdf->SetFont('Arial', '', 20); $pdf->Text(90, 50, 'Print me!'); //Launch the print dialog $pdf->AutoPrint(true); $pdf->Output(); ?>
|
View the result here.
DownloadZIP | TGZ
| | |