Python文档处理器
项目描述
rinohtype 是一个批量模式的文档处理器。它根据文档模板和样式表将结构化文档渲染为PDF。rinohtype 的一个重要设计目标是使文档布局和样式定制易于使用。查看展示以了解可能实现的自定义程度。查看文档了解如何自定义您的文档样式。
贡献呼吁
由于rinohtype是一个相当大的项目,目前由一个人维护,您的贡献可以产生重大影响。具体来说,以下事项可以帮助推动rinohtype的发展
开发专业外观的样式表和文档模板
自愿成为维护者:修复新版本依赖项发布时出现的问题(Python、Sphinx等),或处理特定平台的回归问题(开发主要在macOS上)。
帮助维护和改进文档
开发新功能,例如:孤行/悬垂行处理、Knuth-Plass行断行、数学排版、性能改进等。
公司可能对资助特定功能的开发感兴趣
因此,如果您有兴趣帮助这些事项中的任何一项,请通过以下方式与我联系:[讨论](https://github.com/brechtm/rinohtype/discussions)、[Gitter](https://gitter.im/brechtm/rinohtype)或[brecht@opqode.com](mailto:brecht@opqode.com)!
功能
rinohtype仍处于beta版本,因此在使用过程中可能会遇到一些问题。如果您遇到任何错误,请创建一个工单。尽管如此,rinohtype已经相当强大。例如,它应该能够替换Sphinx的LaTeX构建器,在大多数情况下。以下是主要功能的概述:
一个强大的页面布局系统,支持栏、页眉/页脚、可浮动元素和脚注。
支持图像和(大)表格,可选地横向渲染。
自动生成目录和索引。
自动编号和交叉引用章节标题、图像和表格。
配置其中一个包含的文档模板或创建自己的模板。
一个直观的样式表系统,灵感来自CSS,允许更改文档元素渲染的几乎所有方面。
模块化设计,允许使用多个前端(例如reStructuredText、Markdown、DocBook等)。
处理OpenType、TrueType和Type1字体,支持高级排版功能,如字距调整、连字、小写字母和旧式数字。
内置支持Google Fonts上的1000多个开源字体[Google Fonts]。
嵌入PDF、PNG和JPEG图像,保留透明度和颜色配置文件。
易于安装和部署;纯Python,依赖项很少。
基于Unicode;适用于非拉丁语。
rinohtype的主要输入格式是reStructuredText。rinoh命令行工具用于渲染reStructuredText文档,而包含的Sphinx构建器可以应用您的样式输出大型文档。请参阅rinohtype手册以获取输出示例。
要求
rinohtype支持所有未达到生命周期结束状态的稳定Python 3版本。解析reStructuredText和CommonMark文档时,rinohtype依赖于docutils和myst-parser。安装rinohtype时,pip负责安装这些要求。
如果安装了Pygments,将启用代码块的语法高亮显示,它将自动与Sphinx一起安装。如果您想包含PDF、PNG或JPEG之外的图像,您还需要安装Pillow。
入门
安装非常简单
pip install rinohtype
如果您想访问尚未在版本中提供的错误修复和功能,您可以安装当前的开发版本
pip install https://github.com/brechtm/rinohtype/archive/refs/heads/master.zip
reStructuredText渲染器
开始使用rinohtype的最简单方法是使用命令行工具 rinoh 渲染一个reStructuredText文档(例如,来自本存储库的 CHANGES.rst)
rinoh CHANGES.rst
当 rinoh 执行完毕后,您将在输入文件旁边找到 CHANGES.pdf。
默认情况下,rinoh 使用文章模板渲染输入文档。运行 rinoh --help 查看如何告诉 rinoh 使用哪个文档模板和样式表。
Apache Flink Builder
rinohtype可以用作LaTeX构建器的直接替换(必须设置 latex_documents 配置变量)。在构建Sphinx项目时,只需选择 rinoh 构建器即可。
sphinx-build -b rinoh . _build/rinoh
贡献
请参阅 CONTRIBUTING.rst 和 DEVELOPING.rst
许可
rinohtype的所有源代码均受 Affero GPL 3.0 许可,除非源文件(如 hyphenator.py 和 purepng.py)中另有说明。
Affero GPL要求基于rinohtype构建的软件也必须以本许可证作为开源软件发布。对于构建封闭源代码应用程序,您可以获取一份 商业许可证。rinohtype的作者也愿意为涉及rinohtype的咨询项目提供服务。
项目详细信息
下载文件
下载适用于您平台的文件。如果您不确定选择哪个,请了解更多关于 安装包 的信息。