【发布时间】:2012-02-10 16:37:55
【问题描述】:
我正在使用 Prawn 在 Rails 3 应用程序中生成 PDF。
是否可以像在 HTML 视图中一样将 Unicode 字符串打印到 PDF 中?
例如,
<%= raw "unicode_for_ཀ" %>
在 show.html.erb 中会产生字形 ཀ 而
pdf.text raw "unicode_for_ཀ"
在show.pdf.prawn 中产生字符串"unicode_for_&#x0F40;"
在show.pdf.prawn中试过:
pdf.font "#{Prawn::BASEDIR}/data/fonts/TibMachUni-1.901b.ttf" do
pdf.text raw "unicode_for_ཀ"
end
和
pdf.font_families.update("TibMachUni" => {:normal => "#{Prawn::BASEDIR}/data/fonts/TibMachUni-1.901b.ttf" })
pdf.font("TibMachUni") do
pdf.text raw "unicode_for_ཀ"
end
这并没有解决问题。
【问题讨论】:
-
我真的不明白问题是什么?
-
我的问题是 unicode 字符串的对应字形(例如 \x0F40)没有出现在我的 pdf 中。它被简单地转换为 utf-8 并显示为常规字符串(例如“\x0F40”)。
标签: ruby unicode character-encoding prawn