时间:2021-05-19
项目需求,对上传的文档进行一些预处理,如果用户上传了doc格式的文档,需要将其处理为docx或者pdf格式,以便后续的流程对文档内容进行提取。
先是试了一下phpoffice/phpword这个包,发现其对doc的转换很不理想,这个包更适合用来根据内容生成文档,而不是转换文档,不是太适合我这种需求。
然后发现了LibreOffice这个开源工具,经过使用,效果很好,分享一下。
服务器是CentOS7,直接使用yum安装LibreOffice,大概需要600MB+ 的磁盘空间:
# 装之前可以先删除一下,防止之前装过yum remove libreoffice-*yum install libreoffice等待安装完成后,确认一下版本啥的,虽然官方已经到6.1版本了,yum里面还是5.3.6的包,不过用起来并没有什么毛病,在这里我还是建议大家使用各自的Linux系统的包管理工具来安装,这样可以省去很多麻烦的。
[root@localhost /]# soffice --versionLibreOffice 5.3.6.1 30(Build:1)不会用的话可以使用soffice --help看一下帮助,非常多的参数和使用案例,转换格式就很简单:
soffice --headless --convert-to docx /opt/upload/source/123.doc --outdir /opt/upload/source以上的命令就是将/opt/upload/source/123.doc文件转换成docx格式,输出到/opt/upload/source文件夹里。
默认情况下:
转换成功会输出类似这样的:
convert /opt/upload/source/123.doc -> /opt/upload/source/123.docx using filter : MS Word 2007 XMLOverwriting: /opt/upload/source/123.docxLibreOffice会根据文件格式自动匹配格式过滤器(filter),至于它支持哪些格式,可以参考一下官网。
总结
以上所述是小编给大家介绍的CentOS下使用LibreOffice实现文档格式的转换方式,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
本文主要以实例形式讨论了VC编译环境下,实现字符串和文件编码方式转换的方法,在linux下请使用Strconv来实现。具体方法如下:一、文件编码格式转换//GB
在Centos下安装PHP时,先后使用了两种方式进行实现,现整理出来以作记录。摘要一般Centos下安装软件我们采用源码安装或者RPM包安装的方式,有时候更简单
word能打开pdf。word不需要将pdf格式文档转换为word格式,使用office2016的word就可以直接编辑pdf文档。 MicrosoftOff
将损坏的Word文档转换为RTF格式后,然后再将RTF格式的Word文档另存为.DOC格式。在这个转换过程中不会丢失Word文档原有的格式,但常常能成功恢复Wo
怎么将Excel表格转换成Word格式文档,可以将Excel表格内容原封不动的转换在Word文档中,而且不会将表格的格式打乱。下面小编就为大家介绍一下,一起