在iOS设备上显示.RTF文件没有UIWebView - iOS上的initWithRTF?
可以在iOS中使用UIWebView
呈现.RTF
文件(请参阅here)。如何直接将.RTF文件“渲染”到自定义图层,而不依赖于UIWebView
?我正在显示自定义表格视图UITableViewCell
。该单元具有以下格式:在iOS设备上显示.RTF文件没有UIWebView - iOS上的initWithRTF?
Cell Title
Cell SubTitle
/
|
| Variable length RTF content
|
\
RTF内容直接来自应用程序随附的一系列文件。从历史上看,我可以将RTF转换为HTML并使用UIWebView
。随着越来越多的用户内容和附加功能在移动用户和桌面用户之间共享内容,所使用的首选文件格式为.RTF
。
在MacOS上,您可以使用(id)initWithRTF:(NSData *)data documentAttributes:(NSDictionary **)dict
创建一个NSAttributedString
。 iOS上会有什么等价物?它甚至有可能吗?
除UIWebView
以外没有股票富文本视图。您必须自己构建它或找到第三方工具。我不熟悉iOS的许多RTF解析器。尽管它可能是有问题的,但通常你是最好的方法。
有一个开源project创造失踪initWithHTML
的替代品,但可悲的是,我有不见过initWithRTF
类似的事情。
另一种解决方案是自己解析RTF - Mono的System.Windows.Forms具有这样的解析器(在C#中),但它不像插件即插即用那么容易。
OmniGroup有一个用于读取和写入RTF到NSAttributedStrings的类,但准备好转移很多的依赖关系。
https://github.com/omnigroup/OmniGroup/tree/master/Frameworks/OmniUI/iPad/RTF
的NSAttributedStrings然后可以用CoreText绘制。