2

可以使用 a 在 iOS 中呈现.RTF文件UIWebView(请参见此处)。如何直接将 .RTF 文件“渲染”到自定义层,而不依赖于UIWebView?

我正在显示一个带有自定义的表格视图UITableViewCell。该单元格具有以下格式:

Cell Title
Cell SubTitle
/
|
| Variable length RTF content
|
\

RTF 内容直接来自应用程序附带的一系列文件。从历史上看,我可以将 RTF 转换为 HTML 并使用UIWebView. 随着越来越多的用户内容和在移动和桌面用户之间共享内容的附加功能,首选的文件格式是.RTF.

在 MacOS 上,您可以使用(id)initWithRTF:(NSData *)data documentAttributes:(NSDictionary **)dict创建一个 NSAttributedString. iOS上的等价物是什么?甚至可能吗?

4

3 回答 3

4

OmniGroup 有一个用于将 RTF 读写到 NSAttributedStrings 的类,但要准备好传输大量依赖项。

https://github.com/omnigroup/OmniGroup/tree/master/Frameworks/OmniUI/iPad/RTF

然后可以使用 CoreText 绘制 NSAttributedStrings。

于 2011-10-04T06:15:47.360 回答
1

除了 之外,没有股票富文本视图UIWebView。您必须自己构建它或找到第三方工具。我不熟悉 iOS 的许多 RTF 解析器。UIWebView,尽管可能存在问题,但通常您是解决此问题的最佳方法。

于 2011-10-03T20:25:37.150 回答
1

有一个开源项目可以创建一个缺失的替代品,initWithHTML但遗憾的是,我没有看到任何类似的initWithRTF.

另一种解决方案是自己解析 RTF - Mono 的 System.Windows.Forms 有这样的解析器(在 C# 中),但它不像即插即用那么容易。

于 2011-10-03T20:25:54.917 回答