如何去掉 Prawn 生成的 PDF 中奇怪的方框字符?
How to get rid of weird box characters in PDFs generated with Prawn?
我是 运行 一个 Rails 6 应用程序,用户可以在其中将其内容转换为 PDF。
我正在使用 Prawn 生成 PDF。
大多数 PDF 看起来不错,但其中一些包含空 (?) 框字符。我根本不明白他们来自哪里,我也无法询问我们的用户。这是其中一个 PDF 文件的屏幕截图:
我怎样才能去掉那些方框字符?
我的猜测是我们的用户正在从他们的文字处理器(例如 MS Word)中复制内容,并且这些内容包含隐藏的格式、制表符等。
我怎样才能摆脱那些?
好的,解决这个问题非常简单。我只是没有意识到 tabs 造成了麻烦,而 Prawn 无法处理它们(显然)。
所以为了让 Prawn 开心,我在我的模型中这样做了:
class Project < ApplicationRecord
before_save :replace_tabs
def replace_tabs
number_of_spaces = 4
description.gsub!("\t", ' ' * number_of_spaces)
end
end
我是 运行 一个 Rails 6 应用程序,用户可以在其中将其内容转换为 PDF。
我正在使用 Prawn 生成 PDF。
大多数 PDF 看起来不错,但其中一些包含空 (?) 框字符。我根本不明白他们来自哪里,我也无法询问我们的用户。这是其中一个 PDF 文件的屏幕截图:
我怎样才能去掉那些方框字符?
我的猜测是我们的用户正在从他们的文字处理器(例如 MS Word)中复制内容,并且这些内容包含隐藏的格式、制表符等。
我怎样才能摆脱那些?
好的,解决这个问题非常简单。我只是没有意识到 tabs 造成了麻烦,而 Prawn 无法处理它们(显然)。
所以为了让 Prawn 开心,我在我的模型中这样做了:
class Project < ApplicationRecord
before_save :replace_tabs
def replace_tabs
number_of_spaces = 4
description.gsub!("\t", ' ' * number_of_spaces)
end
end