1.使用python依赖pypandoc,将md文本转成doc文件
import pypandoc //引入pypandoc依赖""":param text: 数据源文本:param outputfile: 生成文件路径"""pypandoc.convert_text(text, 'docx', 'md', outputfile= outputPath + '.docx')
2.使用libreOffice软件,将doc文件转成pdf
首先卸载当前系统的libreoffice,因为大多数系统默认安装的都是低版本,我们要使用的是最新稳定版
yum remove libreoffice-*
在https://www.libreoffice.org/download/download/上下载最新的稳定版gz压缩包
安装java依赖
yum -y install java-1.8.0-openjdk*
然后将刚才下载的gz压缩包解压后安装
tar xvf libreOffice_6.2.5.2_linux_x86-64_rpm.tar.gz cd libreOffice_6.2.5.2_linux_x86-64_rpm/RPMS/ yum localinstall *.rpm
最后安装一些依赖
yum install cairo cups-libs libSMyum install ibusyum install libreoffice-headless
在命令行输入,显示帮助文档就没问题了
libreoffice -help
解决中文乱码问题,修改系统语言来支持中文执行命令:yum groupinstall "Fonts"安装成功后,打开vim /etc/locale.conf按键 i 进入编辑模式, 把内容改为LANG="zh_CN.UTF-8"wq 存盘然后重启服务器reboot之后也可以支持中文转换了
转换命令
libreoffice6.2 --headless --convert-to pdf /root/4321.docx
python代码1
def doc2pdf_linux(doc): """ convert a doc/docx document to pdf format (linux only, requires libreoffice) :param doc: 路径文件 """ cmd = 'libreoffice6.2 --headless --convert-to pdf'.split() + [doc] p = subprocess.Popen(cmd, stderr=subprocess.PIPE, stdout=subprocess.PIPE) p.wait(timeout=10) stdout, stderr = p.communicate() if stderr: raise subprocess.SubprocessError(stderr)
python代码2
import os"""convert a doc/docx document to pdf format (linux only, requires libreoffice):param outdir: 文件输出路径"""os.system(“libreoffice --invisible --convert-to pdf --outdir /home/wanxing/Desktop/ /home/wanxing/Desktop/demo.docx”)
总结 以上是内存溢出为你收集整理的linux系统python md文件转pdf全部内容,希望文章能够帮你解决linux系统python md文件转pdf所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)