在Android上,我想以编程方式创建一个支持UTF-8的word文档(包含图像)。
实际上我正在寻找一个标准的轻量级库。
答案 0 :(得分:3)
我无法找到任何使用Word文档的库
我使用Itext用于创建PDF文件而不是Word文档
答案 1 :(得分:3)
您只有几个选项:
你最好的选择是Aspose.Words,你需要的是什么,但需要付出代价。其他两个选项是免费和开源的。
答案 2 :(得分:1)
这个问题已经很老了,但由于我遇到了同样的问题并且长期寻找解决方案,我想指出这两个免费选项:
https://github.com/centic9/poi-on-android
这使您可以创建自定义Apache POI .jar文件,其中只包含任务的POI必要部分,因为POI也能够处理其他文档类型。
要通过自定义jar的图像处理启用单词支持,您必须从poishadow文件夹中的build.gradle文件中删除以下行:
exclude 'org/apache/poi/wp/**'
exclude 'org/apache/poi/xwpf/**'
exclude 'org/openxmlformats/schemas/drawingml/**'
exclude 'org/openxmlformats/schemas/wordprocessingml/**'
然后根据项目自述文件中提到的文档构建项目。这是必要的,因为标准POI不会在Android上运行,因为一些不受支持的依赖项(javax等)和方法数限制。
替代方案是https://github.com/leonardoanalista/java2word,它也没有针对Android进行优化,但几乎没有依赖关系,可以 在Android上运行。它只能创建.doc文件,但它很容易使用和自定义(在Android上支持图像需要一点点努力,以Android方式对它们进行base64编码。)此解决方案具有对于包含大量图像的文件有一些限制,因为文件变得非常大。