加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

php – pdftk错误:无法打开PDF文件:

发布时间:2020-12-13 13:33:26 所属栏目:PHP教程 来源:网络整理
导读:我正在使用pdftk库从pdf中提取表单字段.除了我得到一个pdf文件 pdf file link的一个问题外,一切正常运行.这导致错误在下面给出 Error: Failed to open PDF file: http://www.uscis.gov/sites/default/files/files/form/i-9.pdfDone. Input errors,so no outp
我正在使用pdftk库从pdf中提取表单字段.除了我得到一个pdf文件 pdf file link的一个问题外,一切正常运行.这导致错误在下面给出
Error: Failed to open PDF file: 
   http://www.uscis.gov/sites/default/files/files/form/i-9.pdf
Done.  Input errors,so no output created.

对此的命令是

root@ri8-MS-7788:/home/ri-8# pdftk http://192.168.1.43/form/i-9.pdf dump_data_fields

所有其他表单都使用相同的命令.

Attempt1

我试图将pdf加密到不安全的版本,但它会产生相同的错误.这是命令

pdftk http://192.168.1.43/forms/i-9.pdf input_pw foopass output /var/www/forms/un-i-9.pdf

更新

这是我完整的功能来处理这个问题

public function Formanalysis($pdfname) 
    {
         $pdffile=Yii::app()->getBaseUrl(true).'/uploads/forms/'.$pdfname;
        exec("pdftk ".$pdffile." dump_data_fields 2>&1",$output,$retval);
        //got an error for some pdf if these are secure 
        if(strpos($output[0],'Error') !== false)
        {
            $unsafepdf=Yii::getPathOfAlias('webroot').'/uploads/forms/un-'.$pdfname;
            //echo "pdftk ".$pdffile." input_pw foopass output ".$unsafepdf;
            exec("pdftk ".$pdffile." input_pw foopass output ".$unsafepdf);
            exec("pdftk ".$unsafepdf." dump_data_fields 2>&1",$outputunsafe,$retval);
            return $outputunsafe ;
            //$response=array('0'=>'error','error'=>$output[0]);
            //return $response;

        }

        //if (strpos($output[0],'Error') !== false){ echo  "error to run" ; }   // this is the option to handle error 
        return $output;

    }
这可能是一个小技巧解决方案,但应该适合你.正如@bruno所说,这是加密文件.在使用pdftk之前,您应该解密它.为此我找到了解密的方法,即qpdf一个免费的opem源库来解密pdf,删除所有者和用户密码等等.你可以在这里找到这个 Qpdf.在你的系统上安装它.并运行此命令
qpdf --decrypt input.pdf output.pdf

然后使用pdftk命令中的输出文件.它应该工作.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读