jdoolittle126/templateify-pdf

程序化填充和平滑PDF表格,无需外部工具。

dev-main 2021-08-13 02:54 UTC

This package is auto-updated.

Last update: 2024-09-13 09:29:26 UTC


README

Template-ify是一个小巧的PHP工具,可以程序化地填充和平滑PDF表格,无需在服务器上安装像PDFtK这样的工具。

安装

在composer.json中添加jdoolittle126/templateify-pdf,或者使用以下命令

composer require jdoolittle126/templateify-pdf

用法

Template-ify接受模板PDF文件和数据,并生成填充后的PDF文件。这些PDF文件可以选择平滑处理以防止进一步编辑。表单数据通过一个包含键值对的'fields'数组添加。键是表单字段的名称,值是要输入的数据。一个注意事项是模板PDF必须是版本1.4(Acrobat 5.x)或更低版本。请参阅更改PDF版本

准备模板

在创建PDF表格后,请注意字段名称。值NameDateEmailMessage将被用来识别字段。

Example of Sample Form

更改PDF版本

保存模板时,请务必选择Adobe PDF文件,优化。这将显示一个设置菜单,允许将PDF以程序运行所需的兼容模式保存。

Form Saving Options

在设置对话框中,选择使兼容:'Acrobat 5.0及更高版本'

Sample Form

用法

主要功能Templateifier::templateify接受4个参数。

  • 第一个是$pdfFile,模板PDF文件的路径(例如:"docs/my_form.pdf")
  • 第二个是$outputFile,输出PDF将被创建的路径(例如:"output/my_result.pdf")
  • 第三个是$flatten,如果输出文档应该被平滑处理则为true,否则为false
  • 第四个是$fields,字段值对的数组
  • 可选的还有一个$results参数,它将在发生异常时存储异常
    $pathToPdfTemplate = "path\\to\\your\\pdf";
    $pathToOutputFile = "path\\to\\your\\output\\output.pdf";
    $flattenOutput = false;
    $fields = array(
        'Name' => 'John Doe',
        'Date' => date("Y/m/d"),
        'Email' => 'johndoe@email.com',
        'Message' => 'This is a sample message that we can transfer to a PDF!'
    );

    Templateifier::templateify($pathToPdfTemplate, $pathToOutputFile, $flattenOutput, $fields);