内容简介:项目需求,对上传的文档进行一些预处理,如果用户上传了先是试了一下然后发现了
项目需求,对上传的文档进行一些预处理,如果用户上传了 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 --version LibreOffice 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
文件夹里。
默认情况下:
outdir
转换成功会输出类似这样的:
convert /opt/upload/source/123.doc -> /opt/upload/source/123.docx using filter : MS Word 2007 XML Overwriting: /opt/upload/source/123.docx
LibreOffice
会根据文件格式自动匹配格式过滤器(filter),至于它支持哪些格式,可以参考一下官网。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
Redis开发与运维
付磊、张益军 / 机械工业出版社 / 2017-3-1 / 89.00
本书全面讲解Redis基本功能及其应用,并结合线上开发与运维监控中的实际使用案例,深入分析并总结了实际开发运维中遇到的“陷阱”,以及背后的原因, 包含大规模集群开发与管理的场景、应用案例与开发技巧,为高效开发运维提供了大量实际经验和建议。本书不要求读者有任何Redis使用经验,对入门与进阶DevOps的开发者提供有价值的帮助。主要内容包括:Redis的安装配置、API、各种高效功能、客户端、持久化......一起来看看 《Redis开发与运维》 这本书的介绍吧!
Base64 编码/解码
Base64 编码/解码
URL 编码/解码
URL 编码/解码