0

我正在尝试填写pdf并使用php保存。我也试过FPDF 这个脚本,但它会抛出一个错误FPDF-Merge Error: Object streams are not supported。在我也试过php-pdftk包之后。我使用的是 ubuntu 20.04,所以没有说明在该网站上找到为 Ubuntu 安装 pdftk 服务器的说明。我使用本网站的方法 3 安装它,因为Pdftk ubuntu install bleow 是我在配置 pdftk 后的代码

 $pdf = new Pdf(public_path().'/test.pdf');
 $result = $pdf->fillForm([
                'name_field'=>'hello',
           ])
           ->flatten()
           ->saveAs(public_path().'/filled.pdf');
           // Always check for errors
           $error ='';
 if ($result === false) {
    $error = $pdf->getError();
 }
  
 return response()->json($error, 200);

此结果始终返回 false 并且错误消息为空。如果我做错了什么或者有没有更好的解决方案来填写 PDF 表格,有人可以帮我解决这个问题吗?

谢谢你。

4

1 回答 1

1

更改->flatten()needAppearances()

注意:填写 UTF-8 数据时,应始终添加 needAppearances() 选项。这将确保 PDF 阅读器负责使用正确的字体进行渲染,这是 pdftk 无法为您完成的。另请注意,如果您的数据中有特殊字符,flatten() 并不能很好地工作。

https://github.com/mikehaertl/php-pdftk

于 2021-08-26T12:00:52.847 回答