我正在尝试使用prawn生成带有 Unicode 字符的 PDF。我检查了 corefonts 包中的 Arial 字体是否包含所需的字符,将其注册并选择为默认字体:
font_path = "/usr/share/fonts/corefonts/"
font_families.update("sans" => {
normal: { file: "#{font_path}/arial.ttf" },
bold: { file: "#{font_path}/arialbd.ttf" },
bold_italic: { file: "#{font_path}/arialbi.ttf" }
})
font "sans"
现在我正在尝试formatted_text_box
像这样输出 Unicode 文本:
formatted_text_box [{text: my_text, font: "sans", size: 14, styles: [:bold]}],
at: [10, 160],
align: :center,
width: 330,
height: 20,
overflow: :shrink_to_fit
不幸的是,文本不是粗体,也没有显示非 ascii 字符。如果我将样式参数更改为[:normal]
可以,但我需要它加粗。
此外,如果在打电话之前formatted_text_box
我把这个:
text "anything"
中的文本formatted_text_box
正确呈现!
两种情况都会发生:0.12.0 和 1.0.0.rc2。
难道我做错了什么?