当前位置: 首页 > news >正文

Docker安装unoconvert

Docker安装unoconvert

1 介绍

unoconvert是使用LibreOffice作为文档转换服务器。这个比kkfileview快,转出的效果要好一点。

https://github.com/unoconv/unoserver

2 使用Docker安装服务

2.1 创建容器

使用libreoffice安装unoconvert

# 下载镜像
docker pull linuxserver/libreoffice:25.2.5

创建容器

docker run -itd \
--name pyunoconv \
linuxserver/libreoffice:25.2.5

2.2 创建环境

(1)设置环境

进入容器

docker exec -it pyunoconv /bin/bash

在Linux中添加环境变量,如果不设置会出现下面的问题。

ImportError: Could not find the 'uno' library. This package must be installed with a Python installation that has a 'uno' library. This typically means you should install it with the same Python executable as your Libreoffice installation uses.

设置环境变量

export URE_BOOTSTRAP=vnd.sun.star.pathname:/usr/lib/libreoffice/program/fundamentalrc
export PATH=/usr/lib/libreoffice/program:$PATH
export UNO_PATH=/usr/lib/libreoffice/program
export LD_LIBRARY_PATH=/usr/lib/libreoffice/program:/usr/lib/libreoffice/ure/lib
export PYTHONPATH=/usr/lib/libreoffice/program:$PYTHONPATH

(2)解决中文乱码

没安装中文字体会出现转换时都是空,无法转中文。解决方法将Windows下的C:\Windows\Fonts的字体全部打包为”Fonts.zip“,复制到容器中的/usr/share/fonts/

在宿主机中将"Fonts.zip"复制到容器中。

docker cp Fonts.zip pyunoconv:/home/

在pyunoconv容器中解压和移动字体

# 进入容器
docker exec -it pyunoconv /bin/bash# 进入目录
cd /home# 进入容器解压字体包
unzip Fonts# 将字体移动到字体目录下
mv Fonts/* /usr/share/fonts/

(3)创建环境

# 进入容器中的home目录
cd /home# 在home中创建虚拟环境
python -m venv pyunoconv# 激活虚拟环境
source ./pyunoconv/bin/activate# 安装依赖包
pip install unoserver

2.3 转PDF文件

(1)直接使用libreoffice转PDF

此方法比较耗时

libreoffice --headless --convert-to pdf /home/test7.docx

(2)使用unoserver转化

# (1)进入虚拟环境
source /home/pyunoconv/bin/activate# (2)启动unoserver服务
unoserver# (3)转化PDF文件
unoconvert test7.docx test7.pdf

(3)截图

启动服务截图

在这里插入图片描述

转换文件

在这里插入图片描述

http://www.dtcms.com/a/614868.html

相关文章:

  • 【ros2】ROS2接口定义指南
  • 网页制作免费网站建设wordpress函数表
  • 建设部房地产网站建设银行支行网站
  • 网站meta 优化建议教育技术专业网站开发课程
  • 网站开发课程的建议网页怎么搜索关键词
  • AngularJS 简介
  • 软考程序员2016年上半年二叉排序树案例题解答
  • LIN总线
  • 彩票走势图网站是用什么程序做的做原型的素材网站
  • 现在建网站还能赚钱吗在线教育网站建设策划
  • 梅州市住房和建设局网站网络广告文案案例
  • C++ 对象布局之padding(填充字节)
  • 做直播的视频在线观看网站成都网站制作报价
  • 现在都用什么软件做网站创建网站有免费的吗
  • MVC 布局:深入解析其原理与实践
  • iis添加网站网站设计就业前景如何
  • 学院网站建设策划书wordpress的功能简介
  • LeetCode 热题 100——滑动窗口——找到字符串中所有字母异位词
  • 土动静扭剪三轴仪技术指标
  • exe文件反编译成C语言 | 反编译技巧与应用分析
  • 指数型枚举
  • 竞价网站策划网站建设在作用是什么原因
  • 遵义住房城乡建设厅网站邯郸网站建设恋家
  • LeetCode 面试经典 150_二叉树_路径总和(75_112_C++_简单)(DFS)
  • 赋能职业教育:大众ID.4 CROZZ新能源汽车故障诊断仿真教学软件
  • 网站前端是什么意思品牌策划公司推荐
  • Linux字符设备驱动开发详细教程(简单字符设备驱动框架)
  • 电商网站建设运城商务网站建设难不难
  • 【Linux日新月异(三)】CentOS 7软件管理深度指南:从YUM到源码编译
  • 有了空间和域名 网站容易做吗长沙免费旅游景点大全