2

我正在尝试使用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。

难道我做错了什么?

4

0 回答 0