また珍しく平日にメモ.
PHPからPDF出力すると言えば
・PDFLib
・FPDF
・Zend Framework
あたりが代表格かと思います.
Zend FrameworkでのPDF出力はまだ試してませんが(正確には0.xの時に上手く動作させる事が出来ませんでした orz)、PDFLibもFPDFも基本的にはPHPのコードからPDFを吐き出す事に変わりありません.
そして出力時の問題で有名なのがIEとsessionの問題.
PHPでsessionを使っている場合、普通にPDF出力するとIEではまったく表示されない状態になります(画面真っ白).
その為、IEを考慮する場合に於いて、sessionを使ってるコードからPDFを吐き出す時は
session_cache_limiter('private')
をsession_start前に宣言してやる必要があります.
当たり前ですがここまでは知っています.
んが!
まさかOpera9でも同じ状況になるとは?! orz
そんな事まったく知らず「あれ?何で?何で?何で出ないの?」と大ハマり.
Opera8まではinlineで表示できなかったので、Operaの事はまったく気にしてませんでしたよ.
まったく、相変わらずOperaは色々と面白い事をやらかしてくれます.
Opera8→9で、JavaScriptからIFrame内をprintした時の挙動も違いますしw
今更ですが、Opera9をもう少し触ってみる必要がありそうです.
そしてもう一個.
原因は良く分かりませんが、Safariで同じ様にPHP→PDF出力すると、場合によって
ファイルの最初に%PDF- がありません。
と言うエラーが出ます(Ver 1.3.2でしか確認してません).
出ますと言うか出てしまって、またしてもハマりました orz
未だに原因が分からないんですが、取り敢えず
header('Content-Length: [バッファサイズ]')
を送出しなければこのエラーが起きない事が判明.
なんだかなぁ.
対処出来てるのはいいんですが、非常に気持ち悪いです.
どっかでコード間違えてるんだろうか?
でもSafari以外で出ないんだよなぁ orz
しかも、今日『Windows版のSafari』が開発中である事が発表されました.
iPodでiTunesが普及した様に、抱き合わせ戦法でWindowsにSafariが普及した場合、無視できない存在になるかもしれません.
正直もうブラウザは増えなくていいですから orz
※現状Windows版Safariはまともに動きません
2007年6月12日火曜日
登録:
コメントの投稿 (Atom)
0 件のコメント:
コメントを投稿