【OfficeOnline】文档在线预览之LibreOffice安装(二)

引言

在上一篇文章中,介绍了如何在项目中使用第三方文档预览服务实现在线预览文档。那么,这一篇文章,我们将详细介绍如何安装第三方工具LibreOffice。LibreOffice 提供 LibreOffice Local 和 LibreOffice Online 两个版本,分别提供本地接口和远程接口的访问调用。

一、LibreOffice Local

1.下载LibreOffice组件的rpm离线包

https://zh-cn.libreoffice.org/download/libreoffice/

2.安装

# 安装相关依赖
yum install -y libSM.x86_64 libXrender.x86_64  libXext.x86_64
yum groupinstall -y  "X Window System"
# 解压文件
tar -zvf LibreOffice_7.5.5_Linux_x86-64_rpm.tar.gz
# 安装
cd LibreOffice_7.5.5.2_Linux_x86-64_rpm/RPMS
yum localinstall -y *.rpm

3.测试

# 安装位置查找,输出所有rpm列表信息
rpm -qa
# 根据名称,找到具体位置
rpm -ql libreoffice7.5-writer-7.5.5.2-2.x86_64
# 切换到libreOffice目录下
cd /opt/libreoffice7.5
/opt/libreoffice7.5/program/soffice.bin --headless --convert-to pdf /opt/test.docx --outdir /opt/

4.字体安装

如果转换文档有乱码,需要安装字体,可以将windows下(C:\Windows\Fonts目录)的字体库打包上传到libreoffice目录下
/opt/libreoffice7.5/share/fonts/truetype

# 另外将字体复制到/usr/share/fonts目录下 
sudo mkfontscale
sudo mkfontdir
#-f强制扫描,-v过程
sudo fc-cache  -fv  

二、LibreOffice Online

1.通过docker拉取 LibreOffice Online 主干镜像:

docker pull libreoffice/online:master

2.启动容器,根据实际情况替换:

docker run -t -d -p 9980:9980 -e "username=root" -e "password=123456" -e "extra_params=--o:ssl.enable=false" --restart always libreoffice/online:master

注:控制台密码不允许有特殊字符,否则会被截断,如输入密码 “test@123”,实际密码会变为 test )
4)执行 docker ps 命令,如正常启动,可看到容器信息;进入该容器:

docker exec -it 容器ID /bin/bash

3.(容器自带了nano) 修改 /etc/loolwsd/loolwsd.xml 配置,修改或新增 storage→wopi→host 节点:“.*”

<hostdesc="Regexpatternofhostnametoallowordeny."allow="true">.*</host>

4.修改配置文件完毕保存后,容器自动重启,终端回到宿主机。
如上述步骤操作错误,可停止(docker stop)、删除(docker rm)容器,重新运行 docker run 命令;修改配置亦可通过docker cp命令将配置文件拷贝到宿主机、在宿主机修改完毕后再覆盖回容器。
部署完毕后,可以访问LibreOffice Online主页(地址为:http://ip:port),显示OK;亦可访问控制台
(地址为:http://ip:port/loleaflet/dist/admin/admin.html)
部署完毕后,可通过curl工具验证转换效果:

curl -F "data=@test.docx" http://ip:port/lool/convert-to/pdf > test.pdf
  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值