Using Omni to do RTF Editor
首先这是一个中断的项目(虽然以后个人可能会继续,但在公司层面上已经到此为止了),但是还是完成了相关的内容: 读取rtf/rtfd文件,编辑(字体,大小,颜色),添加图片,保存。 (至于为什么要选择rtf格式来实现富文本编辑,下面会做说明) 在项目过程中还是遇到不小的问题,得到些许收获,因此在这一并纪录下来。 2012-02-06 16:04:07 首先我们得了解RTF是种什么格式,这个可以到微软的网站上取找,或者搜索 “RTFV1.7规范.doc”。 规范里面主要是一些控制字,关键字之类的东西,我们需要对一些常见的字符进行解析以保证可以显示大多数格式的rtf文件。 在之前的日志里,我提到了OmniGroup的三大类,这里再说明一下: <OmniUI/OUIRTFReader.h>:读取rtf/rtfd文件,得到NSAttributedString对象(iOS可以使用CoreText绘制NSAttributedString) <OmniUI/OUIEditableFrame.h>:将NSAttributedString对象绘制到View,并实现编辑功能(主要实现iOS的相关delegate,如UIKeyInput,UITextInputTraits,EditMenu等) <OmniUI/OUIRTFWriter.h>:将NSAttributedString对象 保存程文件rtf