【问题标题】:Format html content from database using prawn使用虾格式化数据库中的html内容
【发布时间】:2016-07-18 03:12:44
【问题描述】:

如何在虾文档中呈现来自数据库的 HTML 内容

class PdfReport < Prawn::Document
  def initialize user
    super()
    text user.description #=> "<p>It's an html content</p>"
  end
end

我从上面的代码得到的输出是一个带有 HTML 标签的字符串。我想要html_safe 之类的东西。 Prawn可以吗?

【问题讨论】:

    标签: ruby-on-rails ruby-on-rails-4 prawn html-sanitizing html-safe


    【解决方案1】:

    html 段落标签在大虾中不起作用。如果您正在寻找如何在段落之间创建分隔符,请参阅https://stackoverflow.com/a/49683036,它显示了如何垂直测量文本框(和格式化的文本框)并相应地移动光标。

    但是大虾可以解释一些html标签比如粗体:

    s = "<b>It's an html content</b>"
    
    text s # "<b>It's an html content</b>"
    

    text s, :inline_format =&gt; true # 是html内容

    【讨论】:

    • 使用:inline_format =&gt; true,它不识别特殊符号。例如,我想显示英镑货币符号而不是 £知道如何实现吗?
    • 我希望 Prawn 能够更好地支持 html 表示法。我认为他们的立场是,这是衍生项目需要解决的问题——非常不幸。只是猜测,但我会尝试将符号复制并粘贴到您的文档中,而不是尝试将其表示为 HTML 实体。如果您在 rails 中生成它,请确保您的编码是 UTF-8。
    猜你喜欢
    • 2011-02-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-08-29
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多