2009-05-01 7 views
0

OSやブラウザに関係なく、ユーザーのブラウザで文書を確実に配信するための最良の方法のライブラリや良いドキュメントがありますか?私は主にPDF、office(2003 & 2007)とスキャンした画像(.tiff)を見ています。ブラウザと配信される文書の種類によって、常に異なるヘッダーを設定する必要があるようです。現在:PHP - ブラウザにインラインで文書を確実に配信する

header("Content-Type: $type"); 
header("Content-Disposition: inline; filename=$name"); 
header("Accept-Ranges: bytes"); 
header("Content-Length: $size"); 
header("Expires: 0"); 
header("Cache-Control: private"); 

IEでは最も頻繁に動作するように見えますが、必ずしもFFではありません。

+3

ブラウザにこれらのファイルを強制的に表示させたいのですか?申し訳ありませんが、これはあなたが望むように可能ではないかもしれません。ブラウザは特定のファイルタイプを何にするかを何度も決定しますが、ユーザーはブラウザーにFFのように何をすべきかを伝えることができます。たとえば、自分のお気に入りのPDFビューアで常に.pdfファイルを開くように設定していますが、ブラウザに表示するのではありません。 –

+0

私の問題は、文書をインラインで表示させるために、ヘッダに何が必要なのかを100%確信しているわけではありません。インラインで表示するには、ファイルタイプに基づいて必要とされる、ある種の魔法の組み合わせがあるようです。 AcrobatまたはPreviewでPDFを開くようにシステムが設定されている場合は、そのファイルをダウンロードする必要はありません。ファイルを検索してください。すべて可能です。 – Jason

答えて

0

あなたが持っているコードは、おそらくそれが何をするつもりかと思います。問題は、すべてのブラウザで、そのコードのバリアントが必要になることです。そのため、かなり複雑なブラウザ検出ライブラリで終わることになります。

インライン展開が本当に重要なのであれば、私はそれらをサーバー上でよりWebフレンドリな形式にリッピングし、それを提供することを検討したいと思います。ソースファイルの一番下には常に「ダウンロード」リンクがあります。 Imagemagickはほとんどのフォーマットを.png/.gifsに変換することができ、pdftohtmlのようなものを使用してPDFをリッピングすることができます。私がすぐに私に唾を吐き出すものは、無料ではありませんでしたが、ワードドキュメントのためにこれを行うライブラリもあります。

関連する問題