Ubuntu 安装 LibreOffice

1. 删除预安装的LibreOffice

Ubuntu 和其他的 Linux 发行版带有预安装的 LibreOffice。这可能不是最新的,这是因为发行版有特定的发行周期。在进行新安装之前,你可以通过以下命令删除 Ubuntu 及其衍生发行版中的的旧版本。

python 复制代码
sudo apt remove --purge libreoffice*
sudo apt autoclean
sudo apt autoremove

然后重启以确保一切正常(尽管你也可以跳过这一步)。

2.下载

官网下载地址下载软件包,并通过从下拉菜单中选择类型下载 "最新的" 版本。对于 Ubuntu 和其他衍生产品,请选择 .deb 文件。

下载下来是个压缩包,解压一下(我是windows上下载,解压好又拖到ubuntu上去的,你可以直接wget 下载到ubuntu解压)

再解压一层

到下面这一层就可以了

看一下里面目录结构

红框里面是要安装的.deb 安装包

把 LibreOffice_7.6.7.2_Linux_x86-64_deb 整个文件夹拖到ubuntu 上准备安装

3.安装

安装主安装程序的所有deb包

python 复制代码
# 目录啥的改成自己的哈
sudo dpkg -i ./LibreOffice_7.6.7.2_Linux_x86-64_deb/DEBS/*.deb

还可以安装中文离线帮助文件中的所有deb包,哈哈,我没装所以后面转的中文pdf乱码了,不过后面用其他方法弄好了

python 复制代码
# 这一步可以跳过也可以自己研究
# 安装中文语言包中的所有deb包 */
#sudo dpkg -i ./LibreOffice_4.x.x_Linux_x86_deb_langpack_zh-CN/DEBS/*.deb
#安装中文离线帮助文件中的所有deb包
#sudo dpkg -i ./LibreOffice_4.x.x_Linux_x86_deb_helppack_zh-CN/DEBS/*.deb

4. 测试

linux 命令改成自己安装的版本,我的是7.6

bash 复制代码
libreoffice7.6 -help

这样就是装好了

!!!!!然而我没一次就装好,依次遇到了如下问题:

4.1 报错:/opt/libreoffice7.6/program/oosplash: error while loading shared libraries: libXinerama.so.1: cannot open shared object file: No such file or directory

程序无法加载名为libXinerama.so.1的共享库。这通常意味着系统缺少这个库或者该库没有被正确安装。

libXinerama是一个用于X Window系统的库,它用于处理多屏幕和全屏模式。

python 复制代码
sudo apt-get update
sudo apt-get install libxinerama1

4.2 报错:/opt/libreoffice7.6/program/soffice.bin: error while loading shared libraries: libcairo.so.2: cannot open shared object file: No such file or directory

libcairo.so.2这个共享库文件无法找到。

Libcairo是一个用于创建二维矢量图形的库,是许多图形库(如GTK,Pango,rsvg等)的依赖项。

python 复制代码
#确认libcairo.so.2是否存在于你的系统中
locate libcairo.so.2
python 复制代码
#如果系统中没有libcairo.so.2,可能需要安装或重新安装libcairo。
sudo apt-get update
sudo apt-get install --reinstall libcairo2
python 复制代码
#如果libcairo.so.2已经存在于你的系统中,那么可能是环境变量LD_LIBRARY_PATH没有设置正确。你需要将libcairo.so.2所在的目录添加到LD_LIBRARY_PATH中:
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/path/to/your/libcairo.so.2
#这里的/path/to/your/libcairo.so.2应该替换为libcairo.so.2文件的实际路径。你可以使用locate命令找到这个路径

4.3 no suitable windowing system found, exiting.

python 复制代码
apt-get install libxt6
# 检查LibreOffice是否可以正常工作,不能则继续后续步骤
apt-get install libxrender1

4.4 Warning: failed to launch javaldx - java may not function correctly

python 复制代码
sudo apt install openjdk-11-jre-headless

还不行的话那可能是缺少ibreoffice-java-common :

python 复制代码
sudo apt install libreoffice-java-common

4.5 测试下命令行能否正确运行

python 复制代码
libreoffice7.6 --headless --convert-to pdf:writer_pdf_Export test.docx --outdir pdf_test/

可以用了,哈哈哈!!!

5. 高兴太早了,中文乱码!!!

由于 linux 默认没有安装中文字体,所以导出有中文的文件会导致中文乱码。这里此次安装中文字体。

5.1 查看是否安装中文字体

python 复制代码
# 显示为空表示没有安装中文字体, :前面有空格,后面没空格
fc-list :lang=zh

没有安装的话会提示安装:

python 复制代码
apt install fontconfig

安装完再试一下:

python 复制代码
# 显示为空表示没有安装中文字体, :前面有空格,后面没空格
fc-list :lang=zh

5.2 准备字体

可以从本地 windows 电脑中拷贝出字体文件,拷贝的目录为 C:\Windows\Fonts,找到 中文 文件:

5.3 导入字体

把上面那一堆中文字体文件放到 ubuntu /usr/share/fonts 目录下

然后进去该文件夹

python 复制代码
cd /usr/share/fonts
ls

然后就看到好多后缀 .TTC 的文件

建立字体缓存信息
python 复制代码
apt install xfonts-utils -y
mkfontscale
mkfontdir
fc-cache -fv

# 命令执行成功后终端最后一行会显示 fc-cache: succeeded
验证
python 复制代码
fc-list :lang=zh

成了

再试下docx转pdf

python 复制代码
libreoffice7.6 --headless --convert-to pdf:writer_pdf_Export test.docx --outdir pdf_test/

中文乱码没有了,太不容易了...


参考:
如何在 Ubuntu 中安装最新的 LibreOffice | Linux 中国
Linux 下的安装方法
官网7.6.6软件包
linux环境基于python语言docx转pdf
Libreoffice命令行实现office转pdf(Windows、Linux)
使用 LibreOffice 实现 Word 转 PDF(这个比较详细)
LibreOffice官网
记录libreoffice实现office转pdf(适用于windows、linux)
LibreOffice使用问题记录
在Ubuntu中打开LibreOffice报错:Warning: failed to launch javaldx - java may not function correctly
[Solved] Java problem, Libreoffice cannot find java and DirsyncPro also not
libreoffice - 命令 libreoffice --headless --convert-to pdf test.docx --outdir/pdf 不工作
stackoverflow: command-libreoffice-headless-convert-to-pdf-test-docx-outdir-pdf-is-not
使用 LibreOffice 将 word 转化为 pdf 并解决中文乱码问题

官方英文文档
官方中文文档

相关推荐
欧云服务器4 天前
怎么让脚本命令可以同时在centos、debian、ubuntu执行?
ubuntu·centos·debian
智渊AI4 天前
Ubuntu 20.04/22.04 下通过 NVM 安装 Node.js 22(LTS 稳定版)
ubuntu·node.js·vim
The️4 天前
Linux驱动开发之Read_Write函数
linux·运维·服务器·驱动开发·ubuntu·交互
再战300年4 天前
Samba在ubuntu上安装部署
linux·运维·ubuntu
qwfys2004 天前
How to install golang 1.26.0 to Ubuntu 24.04
ubuntu·golang·install
木尧大兄弟4 天前
Ubuntu 系统安装 OpenClaw 并接入飞书记录
linux·ubuntu·飞书·openclaw
小虾爬滑丫爬4 天前
ubuntu上设置Tomcat 开机启动
ubuntu·tomcat·开机启动
老师用之于民4 天前
【DAY25】线程与进程通信:共享内存、同步机制及实现方案
linux·c语言·ubuntu·visual studio code
小虾爬滑丫爬4 天前
Ubuntu 上设置防火墙
ubuntu·防火墙
林开落L5 天前
解决云服务器内存不足:2 分钟搞定 Ubuntu swap 交换区配置(新手友好版)
运维·服务器·ubuntu·swap交换区