一个纯 Rust 格式的 PDF 解释器和渲染器。
hayro 是一个 Rust 程序包,其任务很简单:它允许您解释一个或多个 PDF 文件的页面,例如将其转换为 PNG 或 SVG 文件。这是一项艰巨的任务,因为 PDF 规范非常庞大,包含许多功能。此外,存在数百万个 PDF 文件,其中包含许多特殊情况,因此一个稳健的 PDF 渲染器应能尽可能妥善处理这些情况。
这并不是第一次在 Rust 中尝试编写 PDF 渲染器,但据我所知,目前这是功能最完备的库。hayro 仍然不支持某些特性和特殊情况(例如渲染断裂组或使用非嵌入 CID 字体的 PDF)。然而,大多数常见特性都受到支持,这意味着您应该能够渲染"平均"的 PDF 文件而不会遇到任何问题。这一声明是基于hayro 能够处理我们测试套件中的 1400 多个 PDF 的事实,其中大部分来自 PDFBOX 和 pdf.js 测试回归套件。
但是,这个框架仍处于非常发展阶段,还有许多问题需要解决,其中最主要的就是性能问题,到目前为止,这并不是重点,但不久将成为优先事项。
hayro 的主要目标是渲染 PDF 文件,但 hayro 项目实际上包含了许多不同的子程序包,理论上可以独立使用。其中包括:
暂无开放 Issues,或尚未同步最近议题。