[PHP-users 2349] PDF出力とIE5.5
FUJIMOTO Yoshihiko
php-users@php.gr.jp
Sat, 29 Sep 2001 21:38:32 +0900
こんばんは。
いつも参考にさせていただいております。藤本です。
Internet Explorer(以下、IE)の Version 5.5 のみで、PDF
出力がうまくできないので、相談させてください。
サーバ側環境は、下記のとおりです。
OS : Linux
PostgreSQL : 7.1.1
apache : 1.3.20
PHP : 4.0.6
pdflib : 3.03
下記のソースを使いました。
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
$pdf=pdf_new();
if(!pdf_open_file($pdf,"")){
print error;
exit;
}
pdf_set_info($pdf,"Author","hoge");
//◆01ページ目開始
pdf_begin_page($pdf,$pageWpix,$pageHpix);
→$pageWpix、$pageHpix はA4縦相当に計算済です。
...描画...
//◆01ページ終了
pdf_end_page($pdf);
//◆02ページ目開始
pdf_begin_page($pdf,$pageWpix,$pageHpix);
...描画...
//◆02ページ終了
pdf_end_page($pdf);
//◆ドキュメントクローズ
pdf_close($pdf);
//◆ブラウザへの出力処理
mb_http_output("pass");
$buf=pdf_get_buffer($pdf);
$len=strlen($buf);
header("Content-type: application/pdf");
header("Content-Length: $len");
header("Content-Disposition: inline; filename=TOHOHO.pdf");
print $buf;
pdf_delete($pdf);
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
最初は、IE の Version 5 でも全く表示できなかったりの状態だ
ったのですが、マニュアル、過去記事の検索等で上のソースまでた
どりつき、IE 5ではインラインで表示させることができる様になり
ました。
しかし、IE 5.5 では、読み込んだ瞬間に、スティタスバーに
「この文書を表示する時にエラーが発生しました」とメッセージが
出るのみで、白いページのままとなります。
テストしてみた環境は、以下のとおりです。
(NN は Nescape Navigator です)
(IEの後の数字は、バージョン情報で表示される番号です)
(Acrobat Reader のバージョンはすべて4.0です)
マシン1
Windows 2000 SP1 + NN 4.73 → OK
Windows 2000 SP1 + IE 5.00.3103.1000 → OK
マシン2
Windwos 98SE + NN 4.70 → OK
Windows 98SE + IE 5.00.2919.6307 → OK
マシン3
Windwos 98SE + NN 4.75 → OK
Windows 98SE + IE 5.50.4134.0600 → NG
IE 6 は手元に無いので、確認していないのですが、IE の5.5 以
降、出力の際に何か別な書き方をしなければならないのでしょうか?。
どなたか、同様の現象に会われた方はいらっしゃいませんか?。
ご教授願います。
############################################################