PHP Conference Japan 2024

fdf_create

(PHP 4, PHP 5 < 5.3.0, PECL fdf SVN)

fdf_create建立新的 FDF 文件

說明

fdf_create(): 資源

建立新的 FDF 文件。

如果要使用資料填入 PDF 文件中的輸入欄位,則需要此函式。

參數

此函式沒有參數。

返回值

傳回一個 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");
?>

另請參閱

新增筆記

使用者貢獻的筆記 4 筆筆記

jwadhwani at pobox dot com
18 年前
對於 fdf_save,您需要提供完整路徑,例如:fdf_save($outfdf,"c:/inetpub/wwwroot/temp_sites/fdf/outtest.fdf"); 而不仅仅是 outtest.fdf。
Punkisdead
21 年前
<?php
$outfdf
= fdf_create();
$volume = "test";
fdf_set_value($outfdf, "volume", $volume, 0);

fdf_set_file($outfdf, "https://127.0.0.1/webapps/volume.pdf");
Header("Content-type: application/vnd.fdf");
fdf_save($outfdf);
fdf_close($outfdf);

?>

這適用於 IE 5.5+

它將填寫欄位並為您開啟產生的 pdf,而無需建立 fdf 檔案並將開啟腳本添加到 pdf 中...
Sergei
21 年前
我認為以下內容可能會為某人節省很多時間。 上面的範例 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");
?>

如果您開啟了 session.auto_start,這段程式碼在 IE 瀏覽器(版本 6 確定會,我懷疑更低版本也會)中將無法正常運作(或者至少很有可能無法正常運作)。顯然地,在將 fdf 資訊傳送給瀏覽器之前設定 cookie 會以某種方式干擾它。但在 Netscape 瀏覽器中卻可以正常運作。我在 Google 上搜尋了好幾天,才在某處找到一篇關於其他人遇到相同問題的文章。

解決方案?嗯,我在網站目錄樹中建立了一個單獨的目錄,並僅針對該目錄關閉 session.auto_start,如下所示:

<Location /new_directory>
php_admin_flag session.auto_start 0
</Location>

希望這對某些人有所幫助。
mlarke at nanuc dot ca
21 年前
Header("Content-type: application/vnd.fdf"); 在 IE 瀏覽器中根本無法正常運作。自動載入 fdf 檔案最簡單的方法是透過 PHP 開啟「pdf」檔案。使用 Acrobat:
文件 -> 頁面動作 -> 頁面開啟 -> 新增 -> JavaScript
並將以下程式碼貼到 pdf 檔案中:

this.importAnFDF("my_fdf_file.fdf");

這將會自動載入 fdf 內容
麥克敬上
To Top