2

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

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

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

编辑

使用 Seeker 的答案,我们在 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>
4

1 回答 1

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>

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

于 2011-07-23T20:32:55.970 回答