I think this will be an easy answer but I just can’t figure it out.
I have a script that generates a pdf using fpdf and fpdi.
If I use a normal image then the pdf generates perfectly but I am trying to use an image generated dynamically by php.
$bc = new PrintBarcode('DARP CODE');
$bc->drawVoucher();
$src = $bc->getVoucher();
// image
$src = $bc->getVoucher();
$pdf->Image($src, 22, 94, 100, 15);
This gives the error:
FPDF error: Image file has no extension and no type was specified: Resource id #16
If I do
$barcode = imagejpeg($src);
$pdf->Image($barcode, 22, 94, 100, 15);
presumably because the imagejpeg is actually outputting the image but the image header is set because if the jpeg header is set the image will display fine so I’m just trying to figure out the correct way of doing this.
If it’s easier, I have a separate script which can generate the image, e.g. `printbarcode.php’ but I don’t know how to get the contents of that script into this function:
$pdf->Image($barcode, 22, 94, 100, 15);
From the error message I would guess that the
$pdf->Image()function is expecting$srcto be a path to a file. What you are passing seems like a object.Try saving the image to disk and loading from there. You are almost there with
imagejpeg()function – see docs on php.net. Supply a path to save the fileor alternatively look for a function on the fpdf library that takes image resource as a parameter.