对于 fdf_save,您需要提供完整路径,例如:fdf_save($outfdf,"c:/inetpub/wwwroot/temp_sites/fdf/outtest.fdf");,而不仅仅是 outtest.fdf。
(PHP 4、PHP 5 < 5.3.0、PECL fdf SVN)
fdf_create — 创建一个新的 FDF 文档
此函数没有参数。
返回 FDF 文档句柄,如果发生错误则返回 false
。
示例 #1 填充 PDF 文档
<?php
$outfdf = fdf_create();
fdf_set_value($outfdf, "volume", $volume, 0);
fdf_set_file($outfdf, "http:/testfdf/resultlabel.pdf");
fdf_save($outfdf, "outtest.fdf");
fdf_close($outfdf);
Header("Content-type: application/vnd.fdf");
$fp = fopen("outtest.fdf", "r");
fpassthru($fp);
unlink("outtest.fdf");
?>
对于 fdf_save,您需要提供完整路径,例如:fdf_save($outfdf,"c:/inetpub/wwwroot/temp_sites/fdf/outtest.fdf");,而不仅仅是 outtest.fdf。
<?php
$outfdf = fdf_create();
$volume = "test";
fdf_set_value($outfdf, "volume", $volume, 0);
fdf_set_file($outfdf, "http://localhost/webapps/volume.pdf");
Header("Content-type: application/vnd.fdf");
fdf_save($outfdf);
fdf_close($outfdf);
?>
这适用于 IE 5.5+
它将填充字段并为您打开生成的 pdf,而无需创建 fdf 文件并将打开脚本添加到 pdf...
我认为以下内容可能会为某人节省大量时间。上面的示例 fdf 片段,即
<?php
$outfdf = fdf_create();
fdf_set_value($outfdf, "volume", $volume, 0);
fdf_set_file($outfdf, "http:/testfdf/resultlabel.pdf");
fdf_save($outfdf, "outtest.fdf");
fdf_close($outfdf);
Header("Content-type: application/vnd.fdf");
$fp = fopen("outtest.fdf", "r");
fpassthru($fp);
unlink("outtest.fdf");
?>
在 IE 中将无法正常工作(或者至少有很大可能性无法正常工作)(版本 6 肯定,我怀疑较低版本也是如此)如果您打开了 session.auto_start。显然,在将 fdf 提供给浏览器之前设置 cookie 会以某种方式弄乱它。不过,它在 Netscape 中可以正常工作。我在 Google 上搜索了好几天,才在某个地方找到一篇关于其他人遇到相同问题的帖子。
解决方案?好吧,我在 web 树中创建了一个单独的目录,并仅为该目录关闭了 session.auto_start,如下所示
<Location /new_directory>
php_admin_flag session.auto_start 0
</Location>
希望这对某人有用。
Header("Content-type: application/vnd.fdf"); 在 IE 中根本无法正常工作。自动加载 fdf 文件的最简单方法是通过 php 打开 'pdf' 文件。使用 Acrobat
文档 -> 页面操作 -> 页面打开 -> 添加 -> javascript
并将以下内容粘贴到 pdf 文件中
this.importAnFDF("my_fdf_file.fdf");
这将自动加载 fdf 内容
干杯迈克