rails:2786
From: 山崎雄介 <y-yamasaki@s...>
Date: Fri, 27 Jun 2008 18:07:05 +0900
Subject: [rails:2786] send_fileでPDFをダウンロードさせる方法
山崎(ゆ)です。 PDFファイルを生成してダウンロードさせるプログラムを書いています。 PDFの生成はgemのhpdfで行っています。 最後にsend_fileすると、ブラウザでは一応ダウンロードすることはできるのですが、フ ァイルタイプを認識していないのか、PDFとして開いてくれません。たとえばFirefoxではhtm拡張子が付加されてテキストデータとして表示されます。 どうしたらブラウザにPDFとして認識してもらえるのでしょうか? サーバはWindows(webrick/mongrel)とCentOSで試して同じ結果でした。 クライアントはWindows(IE7/Firefox)です。 よろしくお願いします。 [環境] WindowsXP ruby 1.8.6-p111, rails(2.0.2) mongrel(1.1.5) CentOS5.1 ruby 1.8.6-p111, rails(2.0.2) Apache/2.2.3 + mod-fcgid [コントローラの抜粋] #=================================================== class EventController < ApplicationController def event_report # PDFオブジェクト生成 pdf = HPDFDoc.new pdf.use_jp_fonts pdf.use_jp_encodings page = pdf.add_page page.set_size(HPDFDoc::HPDF_PAGE_SIZE_A4, HPDFDoc::HPDF_PAGE_PORTRAIT) @events = Event.find(:all) # ------ # PDFの内容を書く(略) # ------ # PDFをテンポラリに落としてから送る filename = "event_report.pdf" dirname = File.join(RAILS_ROOT, 'tmp', 'pdf') fullpath = File.join(dirname, fullpath) pdf.save_to_file(fullpath) send_file fullpath, :filename=>filename, :type=>'application/pdf' end end _______________________ Yusuke Yamasaki <y-yamasaki@s...> -- ML: rails@r... 使い方: http://QuickML.com/
-> 2786 2008-06-27 11:07 [y-yamasaki@s... ] send_fileでPDFをダウンロードさせる方法 2787 2008-06-27 11:13 ┗[kimoto@o... ] 2788 2008-06-27 11:24 ┗[y-yamasaki@s... ] 2789 2008-06-27 11:40 ┣[kimoto@o... ] 2790 2008-06-27 13:06 ┃┗[y-yamasaki@s... ] 2791 2008-06-27 17:39 ┗[t-makino@w... ] 2792 2008-06-28 09:35 ┗[y-yamasaki@s... ] 2793 2008-06-28 12:17 ┗[y-yamasaki@s... ] 2795 2008-07-01 07:37 ┗[y-yamasaki@s... ]