pdfkitを使用してpdfドキュメントを作成するrails3.1アプリがあり、生成されたpdfにスタイルがないという事実を除いて、すべてが指定どおりに機能します。wkhtmltopdfは私のスタイルシートにアクセスできず、それよりも大きな問題ではないと思います。これらのスタイルシートへのアクセスをどのように許可するかについて、誰かが手がかりを持っていますか?私は基本的にこのテーマでrailscast#220に従いましたが、pdfkitをrails 3.1で動作させるには、新しい初期化子を作成する必要がありました。
これは、pdfkitをrails3.1で動作させるために使用する必要があったイニシャライザです。
ActionController::Base.asset_host = Proc.new { |source, request|
if request.env["REQUEST_PATH"].include? ".pdf"
"file://#{Rails.root.join('public')}"
else
"#{request.protocol}#{request.host_with_port}"
end
}
PDFへのリンクは次のようになります。
<%= link_to 'Download PDF', load_path(@load, :format => "pdf") %>
これにより、スタイリングのないpdfへのリンクが表示されます。
私のapplication.rbでは、pdfkitを次のように構成しました。
config.middleware.use PDFKit::Middleware, :print_media_type => true
これをlayouts/application.html.erbファイルにも追加しました。
<%= stylesheet_link_tag "application", :media => "all" %>