[PHP-users 13667] FDFでのブラウザ表示について

017102 熊谷 悟 php-users@php.gr.jp
Mon, 3 Mar 2003 17:19:20 +0900


はじめてご質問させていただきます.

今回,Software Designの2002-1月号のFDFを使用した
PDF出力の記事を参考に以下の環境でテストを行いました.

サーバ
WinNT4.0
Apache-1.3.26
PHP 4.2.2
FDFToolkit 5.0
Win32環境でFDFを使用するための設定は,マニュアルページを参考に
設定済み.

php.iniのmbstringの内容
[mbstring]
mbstring.internal_encoding = EUC-JP
;mbstring.http_input = auto
mbstring.http_output = SJIS
;mbstring.detect_order = auto
;mbstring.substitute_character = none;

クライアント
WinNT4.0
IE 5.0
Acrobat 5.0

ソース
<?php
	$fdf = fdf_create();
	fdf_set_encoding($fdf,"Shift-JIS");
	
	$txt1 = "hoge";
	$txt2 = "hoge2";
	
	$interenc = mb_internal_encoding();   //EUC-JPになっています.
	mb_convert_variables("SJIS",$interenc,$txt1,$txt2);

	fdf_set_value($fdf,"txt1",$txt1,0);
	fdf_set_value($fdf,"txt2",$txt2,0);

	fdf_set_file($fdf,"http://hoge/test/test.pdf");   //Wordを元に作成し
たテンプレートファイルです.
	fdf_save($fdf,"test.fdf");
	fdf_close($fdf);
	
	Header("Content-type: application/vnd.fdf");
	$fp = fopen("test.fdf","r");
	fpassthru($fp);
	unlink("test.fdf");
?>

この状態で実行するとクライアント側では,Acrobatが起動し
「ファイルの種類がサポートされていないか壊れている・・・」とAcrobat側の
メッセージが表示され,ブラウザには表示されません.
IE 4.0 Acrobat4.0のクライアントから実行すると,ファイルのダウンロードダイア
ログが
出た後,「ファイルの先頭に%PDFがありません」とのメッセージが出ます.
MLでFDFをキーに検索し,PHP-users 547 FDF関数について等で
同様の現象があることを確認しましたが,解決策が私の環境には適用されませんでし
た.

エンコードの問題か各種のバージョンの問題かいろいろ調べましたが手詰まり状態で
す.
どなたか,経験がある方はアドバイスをお願いします.