使用远程PDF的XDP文件

时间:2011-07-14 17:51:49

标签: pdf acrobat livecycle adobe-reader

在我们的一个应用程序中,我们将数据库中的脚本转储数据转换为格式良好的XDP文件,用户可以下载该文件。 XDP通过<pdf>标记包含对同一服务器上的PDF的引用。想法是用户可以转储数据,获取XDP,它将下载PDF并自动填写数据,然后可以保存,打印或发送电子邮件。

问题是Adobe Reader(或Acrobat)会打开默认Web浏览器以尝试下载PDF,如果从浏览器打开它,它不会自动填充从数据库转储的数据。如果我使用XDP并使用文本编辑器将<pdf>标记中的链接更改为本地下载的副本,则表单填充正常,因此XDP写入正确,但这不是一个实际的解决方案,因为大多数用户不知道该怎么做。

我的问题是,是否有办法自动执行此过程,以便Adobe Reader或Acrobat下载PDF文件并自动填充数据,并且不会尝试通过Web浏览器路由该过程。

修改

使用搜索者的答案,我们在PHP中提出了以下简短代码:

$filename = ""; // Your file here
$contents = base64_encode(file_get_contents($filename));

然后在处理XML的PHP​​文件中:

<pdf xmlns="http://ns.adobe.com/xdp/pdf/">
    <document>
        <chunk><?php echo $contents ?></chunk>
    </document>
</pdf>

1 个答案:

答案 0 :(得分:2)

我今天正在处理完全相同的问题。您应该在xdp文件中使用Base64编码包含PDF文件。

在您的XDP文件中

将此<pdf href="http://.../form.pdf">替换为:

 <pdf xmlns="http://ns.adobe.com/xdp/pdf/"><document>
     <chunk>**CONTENT OF YOUR PDF IN BASE64 GOES HERE**</chunk>
    </document>
 </pdf>

那应该可以解决你的问题。