创建一个word文档,Swift

时间:2016-08-03 18:50:56

标签: ios swift

我正在尝试在Swift应用程序中创建Word文档;只是某个字体中的一些纯文本作为.docx文件。我还没有找到创建word文档的方法,但我最好的猜测是我可以将word文档导入到我的Xcode项目中,只需要文本" Hello World"在其中,然后在我的代码中替换" Hello World"带有所需的文字。

我如何在快速项目中更改.docx文件的文本?

编辑(这就是我需要这个的原因):我想创建一个.docx文件,以便用户可以将输入的任何文字导出到Google文档应用中或页面应用程序。我理解UIDocumentInteractionController用于导出预先存在的文档的用法,但我需要弄清楚如何编写和保存文本到Word文档。

2 个答案:

答案 0 :(得分:1)

您无法直接"编辑文字"在Word文档中。 .docx文件实际上是一个ZIP文件,里面有一定的文件/文件夹结构(尝试将其重命名为.zip&提取它,你会看到),这符合&# 34; Office Open XML"格式(https://en.wikipedia.org/wiki/Office_Open_XML)。

如果没有库可以在Swift中修改Office OpenXML格式,您可能只需要自己编写代码。但是,如果你有简单的要求(只是一些纯文本,正如你所说的那样),这不应该太复杂。

Microsoft在https://github.com/OfficeDev/Open-XML-SDK的GitHub中有一个OpenXML库,可能对您有所帮助。

答案 1 :(得分:-1)

鉴于您提到想要将文档传输到Google文档的用户,您可以考虑使用RTF格式。您还可以将docx文件导出为RTF格式,然后完成该操作,将修改后的RTF文件直接导入Google文档。

我建议这样做,因为RTF也是一种可行的开放格式:请参阅https://www.safaribooksonline.com/library/view/rtf-pocket-guide/9781449302047/ch01.html。基于该引用,您可以生成这个简单的(ascii)输出:

{\rtf1\ansi\deff0 {\fonttbl {\f0 Verdana;}}
\f0\fs16
Hello World!
}

并将其另存为扩展名为.rtf的文件。