I have a PDF form that I am using as a template. For every record in a database, I would like to populate the form on a new page in the same PDF file. I would also like to do this without a toolkit.
Does anyone know the FDF syntax to use one template on multiple pages in one file?
The following code works populating one form in one file.
function createFDF($file,$info)
{
$fdf = "%FDF-1.2\x0d%\xe2\xe3\xcf\xd3\x0d\x0a"; // header
$fdf.= "1 0 obj\x0d<< "; // open the Root dictionary
$fdf.= "\x0d/FDF << "; // open the FDF dictionary
$fdf.= "/Fields [ "; // open the form Fields array
foreach ($info as $field => $val) {
if (is_array($val)) {
$fdf.='<< /T('.addslashes($field).')/V[';
foreach($val as $opt)
$fdf.='('.$this->addslashes(trim($opt)).')';
$fdf.='] /SetFf 1 >>';
} else {
$fdf.='<< /T('.addslashes($field).')/V('.addslashes(trim($val)).') /SetFf 1 >>';
}
}
$fdf.= "] \x0d"; // close the Fields array
$fdf.= "/F ($file) \x0d";
$fdf.= ">> \x0d"; // close the FDF dictionary
$fdf.= ">> \x0dendobj\x0d"; // close the Root dictionary
// trailer; note the "1 0 R" reference to "1 0 obj" above
$fdf.= "trailer\x0d<<\x0d/Root 1 0 R \x0d\x0d>>\x0d";
$fdf.= "%%EOF\x0d\x0a";
return $fdf;
}