public function FillPdfServicePdfBackend::mergeFile in FillPDF 5.0.x
Same name and namespace in other branches
- 8.4 src/Plugin/PdfBackend/FillPdfServicePdfBackend.php \Drupal\fillpdf\Plugin\PdfBackend\FillPdfServicePdfBackend::mergeFile()
Populate a PDF file with field data.
Parameters
\Drupal\file\FileInterface $template_file: The PDF template the field values specified in the mapping should be merged into.
\Drupal\fillpdf\FieldMapping[] $field_mappings: An array of FieldMapping objects mapping PDF field keys to the values they should be replaced with. Example:
[
'Foo' => new TextFieldMapping('bar'),
'Foo2' => new TextFieldMapping('bar2'),
'Image1' => new ImageFieldMapping(base64_encode(file_get_contents($image)), 'jpg'),
];
array $context: The request context as returned by FillPdfLinkManipulator::parseLink().
Return value
string|null The raw file contents of the new PDF, or NULL if merging failed. The caller has to handle saving or serving the file accordingly.
Overrides PdfBackendInterface::mergeFile
See also
\Drupal\fillpdf\Plugin\PdfBackendInterface::mergeStream()
File
- src/
Plugin/ PdfBackend/ FillPdfServicePdfBackend.php, line 97
Class
- FillPdfServicePdfBackend
- FillPDF Service PdfBackend plugin.
Namespace
Drupal\fillpdf\Plugin\PdfBackendCode
public function mergeFile(FileInterface $template_file, array $field_mappings, array $context) {
$pdf_content = file_get_contents($template_file
->getFileUri());
return $this
->mergeStream($pdf_content, $field_mappings, $context);
}