从RML到ODT的转换器。
项目描述
此库实现了一个从Reportlabs RML格式到Libreoffice/Open Document Formats ODT格式的转换器,使用z3c.rml解析器和odfpy库。
它由Shoobx(https://shoobx.com)开发,但开源,我们很高兴接受外部贡献。更多信息请参阅DEVELOPMENT.rst。
安装
使用以下方法安装
$ pip install shoobx.rml2odt
使用方法
shoobx.rml2odt有三种使用方式。
从命令行
安装shoobx.rml2odt将在命令行上安装一个脚本。
rml2odt <infile> <outfile>
从Python中转换文件
您可以将shoobx.rml2odt导入为库,并从Python中转换文件
>>> from shoobx.rml2odt import rml2odt >>> rml2odt.convertFile(infilepath, outfilepath)
它将在infilepath中转换文件,并在outfilepath中创建ODT文件。
在Python中转换RML字符串
如果您的RML数据不在文件中,而是在字符串中,您可以将shoobx.rml2odt导入为库,并从Python中转换文本数据
>>> from shoobx.rml2odt import rml2odt >>> odt_data = rml2odt.convertString(inputstring).read() >>> with open(outputfile, 'wb') as output: ... output.write(odt_data)
变更
0.8.0 (2020-12-08)
升级到py3.7+
针对z3c.rml 4+依赖项的变更
0.7.1 (2020-02-26)
添加对嵌套列表的支持,其样式与父列表不同
0.7.0 (2019-08-19)
添加对keepTogether标签的轻微支持,始终显示内容,并将直接子元素blockTable保持在同一页上
0.6.1 (2019-08-16)
添加对spanStyle标签的支持。
添加对在paraStyle和spanStyle标签中属性underline的支持。
0.6.0 (2019-04-12)
完全重写blockTable样式。这使您可以使用blockTableStyle和td样式标签。支持大多数文本、背景和边框样式。
0.5.0 (2019-04-05)
修复:如果
不在段落中,LibreOffice将不会显示图片
代码清理和重构
添加了大量修复、清理和测试
修复:blockSpan处理完全损坏
修复:从
左侧文本中删除空格,删除 标签的尾部文本 修复:NextPage不起作用,它没有添加分页符
修复:不要向ODT输出添加制表符,Reportlab也不会。有一个特殊的tab标签用于我们的自定义编号。
修复:不要在缺少color标签的值时失败
修复:支持pre和xpre标签,确保不压缩空格
修复:将main或Main页面模板复制到Standard,以使ODT至少在某些方面满意。Reportlab使用main作为传统默认值。这仍然只是一个权宜之计。支持在故事中设置的自定义模板需要更多努力。
复制所有z3c.rml RML测试输入,列出很多短处。
0.4.4 (2019-03-26)
修复:由于0.4.3,自定义项目符号的下一个段落文本提取损坏。
0.4.3 (2019-03-26)
修复:忽略项目符号编号的值作为起始值
修复:支持所有自定义li项目符号(l、L、o、O、r、R)
0.4.2 (2019-03-20)
修复:使用类变量记录是否添加了风格标签BreakJustify的
标签。修复标签处理。它实际上丢弃了大多数文本。
0.4.1 (2019-03-19)
修复:注释标签后面的文本被丢弃。
修复:将3个以上的空格替换为无。导致文本缺少空格。
0.4.0 (2018-01-23)
更多的缩进修复。
添加对O格式列表(First、Second、Third)的支持
添加对项目符号列表和数字列表相互转换的支持
将列表中的表格转换为列表中的列表
支持表格样式中blockSpan
处理注释的尾部文本
支持RML表格块Span样式
计算列数时取最大值,而不是第一个值
0.3.0 (2018-01-12)
许多格式修复,包括几乎完全重写列表处理和列表样式。
0.2.0 (2017-12-08)
清理了公共API。
添加了基本文档。
0.1.0 (2017-11-21)
基本支持
可流式元素:段落、块表、水平线、无序列表、有序列表
样式表:段落样式
页面布局
初始发布
项目详情
shoobx.rml2odt-0.8.0.tar.gz 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | b6a49334e7857c1a9fd19a75bb2b77def05bdc6821e2fee8b74c5f82de8a432d |
|
MD5 | e4a045066519defadeefa924723a4ec9 |
|
BLAKE2b-256 | 4a2f8589f76d453d9913c61b31fce721bda04a84d9d447cb05acac43aca82db6 |