从 ruby 中的 rtf 文本解析纯文本

Parse plain text from rtf text in ruby

我有如下所示的 rtf 文本,

{\rtf1\ansi\deff0 {\fonttbl {\f0 Courier;}}
{\colortbl;\red0\green0\blue0;\red255\green0\blue0;}
This line is the default color\line
\cf2
\tab This line is red and has a tab before it\line
\cf1
\page This line is the default color and the first line on page 2
}

我想从 rtf 文本解析纯文本。 ruby 中是否有任何插件或任何其他解决方案可用于从 rtf 文本解析纯文本?

你可以使用这个Ruby-rtf Gem

require 'ruby-rtf'

data = File.read('./rich.rtf')
parser = RubyRTF::Parser.new
parsed_text = parser.parse(data).sections.map do |val|
  val[:text]
end.join(' ')