簡體   English   中英

wicked_pdf:生產中的UTF-8編碼問題

[英]wicked_pdf: UTF-8 encoding issue on production

在我的Rails 5應用程序中,我使用wicked_pdfwkhtmltopdf-binary gem從HTML生成PDF。 但是在生產中生成PDF時存在一些問題。 貨幣符號顯示不正確,但是在開發中工作正常。

這是我的PDF圖片。

我的產品pdf截圖

我的Gemfile看起來像這樣:

gem 'wicked_pdf', '~> 1.1'
gem 'wkhtmltopdf-binary', '~> 0.12.3.1'

我的控制器代碼:

def generate_order
  @order = @user_builder.orders.find(params[:id])
  render pdf: 'billing_pdf',
  layout: 'layouts/pdf.html.erb',
  :show_as_html => params[:debug].present?, #true
  encoding: 'utf8'
end

我嘗試了很多解決方案,從Stackoverflow到其他類似問題。 他們都建議我在布局文件中添加meta。 我也將其添加到布局文件中。

編輯

我的PDF布局文件。

<!DOCTYPE html>
<html>
<head>
   <meta http-equiv="content-type" content="text/html; charset=utf-8" />
   <title>Billing</title>
</head>
<body>
   <div class='container'>
     <%= yield %>
   </div>
</body>
</html>

如果有人能指出在這種情況下出了什么問題,我將非常感謝。 提前致謝。

其他的編碼問題(看起來應該設置得很好,只有我會使用Content-Type才能確定),您可能在生產機器上遇到字體問題。

嘗試的事情:

  1. 渲染其他unicode字符(如果其中一些可以正確渲染)-這不是編碼問題
  2. 較新的wkhtmltopdf-binary (當時為0.12.4),或wkhtmltopdf_binary (其他gem,目前已過時)
  3. 確保生產服務器已安裝並設置了fontconfiglibfontconfig ,並且還包含您正在使用的字體
  4. 使用webfonts(在我的測試中,前一段時間eot格式似乎可以工作,但現在woff2可能更好)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM