Python CFFI包装器用于LibreOfficeKit
项目描述
Python CFFI包装器用于LibreOfficeKit。已在cpython2,cpython3和pypy上进行测试。
要求
在同一台机器上安装LibreOffice >= 4.3.0。
如果您使用cpython,则需要libffi-dev才能编译CFFI。
安装
pip install pylokit
示例
将rtf文件转换为doc的基本转换
from pylokit import Office
import os
lo_path = "/path/to/libreoffice/program/dir"
with Office(lo_path) as lo:
with lo.documentLoad("myfile.rtf") as doc:
doc.saveAs("myfile.doc")
os._exit(0)
通过显式格式和过滤器选项进行相同的转换
from pylokit import Office
import os
lo_path = "/path/to/libreoffice/program/dir"
with Office(lo_path) as lo:
with lo.documentLoad("myfile.rtf") as doc:
doc.saveAs("myfile.doc", fmt="docx", options="skipImages")
os._exit(0)
需要使用上下文管理器来正确处理LibreOfficeKit文件锁定。在某些情况下,需要使用_exit()而不是默认的exit(),因为LibreOffice在进程退出时可能会崩溃。
致谢
本项目受到Olly Betts的lloconv项目的启发。