ユーザーのブラウザが PDF ファイルを表示できるかどうかを判断する最良の方法は何ですか?
理想的には、ブラウザやオペレーティング システムでは問題にならないはずです。
ASP.NET でそれを行う特定の方法はありますか、それとも答えは JavaScript だけでしょうか?
ユーザーのブラウザが PDF ファイルを表示できるかどうかを判断する最良の方法は何ですか?
理想的には、ブラウザやオペレーティング システムでは問題にならないはずです。
ASP.NET でそれを行う特定の方法はありますか、それとも答えは JavaScript だけでしょうか?
どちらも、どれも、しようとしないでください。
注意:プラグインの検出は正解ではありません。ブラウザー (Ubuntu の Firefox) に PDF プラグインをインストールしていませんが、オペレーティング システムのドキュメント ビューアー (Acrobat Reader ではない) を使用して PDF ファイルを表示できます。
現在、Web ブラウザを実行できるオペレーティング システムであれば、PDF ファイルをすぐに表示できます。
特定のシステムに PDF ビューアーがインストールされておらず、ブラウザーがそれを使用するように構成されていない場合、それは Windows の手動インストールであるか、非常に簡素化された代替オペレーティング システムであるか、または非常にレトロなものである可能性があります。
これらの状況のいずれにおいても、ユーザーは PDF ファイルが何であるかを知っており、意図的に PDF ファイルを表示できないようにするか、必要なソフトウェアのインストール方法を知っていると想定するのが妥当です。
私が自分自身を惑わしているのであれば、私がどのように間違っているのかを説明してもらいたいです.
簡単なグーグル検索でこれが見つかりました。あらゆる種類のプラグインに役立ちます。
PDF をブラウザーで開かず、プラグインを無効にするユーザーがいます (これにより、ブラウザー ウィンドウの外部にあるネイティブ アプリケーションでファイルを開くことができます)。プラグインが利用可能かどうかを検出するよりも、何か (PDF であるかどうかにかかわらず) を開くにはソフトウェアが必要であることをユーザーに知らせる方が適切です。
検出に関するもう 1 つの問題は、バージョンごとの変更 (たとえば、「PDF.PdfCtrl.*」と Adobe PDF ビューアーの「AcroPDF.PDF.*」を参照) およびさまざまなブラウザーの実装 (たとえば、前述の文字列は IE で使用されますが、Firefox ではまったく異なる検出方法が使用されます. 次に、Opera と Safari と ???) を考える必要があります。また、プラグインの検出に違いがある可能性があるさまざまなベンダーがあります (Foxit と Ghostscript を考えてください。ただし、それらがブラウザー用のプラグインを提供しているかどうかはわかりません)。
2008 年に作成されたスクリプトと警告に関するその他の情報については、Internet Explorer でのプラグインの検出 (および他のすべてのプラグインに関するいくつかのヒント) を参照してください。
最初にこのページのアドバイスを無視した後、アーキテクトは Acrobat の検出を進め、避けられないサポートの悪夢を引き起こしました。
ddaa が言及しているように、すべてのシナリオをプラグイン検出で正確にキャプチャできるわけではありません。たとえば、一部のユーザーは PDF ファイルを Acrobat ではなく FoxIt Reader で表示することを選択する場合があります。一部のユーザーのブラウザは、Acrobat 対応であることを示しておらず、常に同じ方法であるとは限りません。
より良い解決策は、ユーザーが関連するドキュメントをどのように表示するかを選択できるようにすることでした。個人的には、プラグインに依存する Web サイトは好きではありません。プラグインは Web の美しさを損ないます。