首页 > 解决方案 > 如何摆脱用 Prawn 生成的 PDF 中奇怪的方框字符?

问题描述

我正在运行一个 Rails 6 应用程序,用户可以在其中将其内容转换为 PDF。

我正在使用Prawn生成 PDF。

大多数 PDF 看起来不错,但其中一些包含空 (?) 框字符。我根本不明白他们来自哪里,也无法询问我们的用户。这是其中一个 PDF 文件的屏幕截图:

在此处输入图像描述

我怎样才能摆脱那些盒子字符?

我的猜测是我们的用户正在从他们的文字处理器(例如 MS Word)中复制内容,并且这些内容包含隐藏的格式、选项卡等。

我怎样才能摆脱那些?

标签: ruby-on-railspdfpdf-generationprawn

解决方案


好的,解决这个问题非常简单。我只是没有意识到标签造成了麻烦,而且 Prawn 没有办法处理它们(显然)。

所以为了让虾开心,我只是在我的模型中做了这个:

class Project < ApplicationRecord

   before_save :replace_tabs

   def replace_tabs
     number_of_spaces = 4
     description.gsub!("\t", ' ' * number_of_spaces)
   end

end

推荐阅读