大家还有没有别的方案
![]() | 1 BBCCBB 2017-09-29 08:51:54 +08:00 我用 freemarker 生成过 word, 这种方法叫 wordxml 嘛, 其实不止 freemarker,用任何模板都可以实现, 不过没进一步转成 pdf,转成 pdf 得需要其他的库了吧 |
2 lixueyu001 OP @BBCCBB 对,word 我生成了 转 pdf 用的 jodconverter + openoffic 结果生成出来的 pdf 内容是 xml |
3 kohos 2017-09-29 09:01:39 +08:00 java 可以用 jodconverter 调用 libreoffice 的进程把 word 文档转换成 pdf,但是系统需要安装了对应的字体才不会被默认字体代替 |
![]() | 4 CoX 2017-09-29 09:03:05 +08:00 via iPhone 不介意付费方案的话,aspose.words 很省心。 |
5 lixueyu001 OP @kohos xml 类型的 word 也可以转成 pdf 吗, 我转出来的 pdf 内容是完整的 pdf |
6 lixueyu001 OP @lixueyu001 说错了 转出来的 pdf 内容是完整的 xml |
![]() | 7 wombat 2017-09-29 09:14:57 +08:00 如果是在 linux 平台下, 只要你的 word 能被 libreoffice 打开阅读,完全可以用 java 跑 “ unoconv ” shell 命令把他转成 pdf,不过可能 word 的排版会乱。前提是装了 libreoffice |
8 vuuv 2017-09-29 09:27:29 +08:00 via Android @lixueyu001 #6 docx 其实是 zip 文件。里面有个 document.xml 保存着文本内容。你可以创建一个空 docx 文件,然后替换 zip 里面的 document.xml 试试。 你直接输入 xml 文件,就成了文本文档转 pdf,当然全文存储。 |
9 lixueyu001 OP @vuuv 多谢 ,我试一下 |
![]() | 10 execute 2017-09-29 09:49:09 +08:00 via Android 我觉得如果你这个需求不是要求排版什么的经常改的话,可以试一试直接生成 PDF,减少中间那么多过程出错的几率 |
11 paranoiagu 2017-09-29 09:52:48 +08:00 via Android @CoX aspose 也不能 100%,前段时间被这个搞死了。当然这已经是挺好的了。 |
12 lixueyu001 OP @vuuv 这样弄可以转 pdf 可是转出来的 pdf 样式全飞了 好不幸 |
13 lixueyu001 OP @CoX 的确好用 感谢 |
14 lixueyu001 OP 谢谢大家! |