3 个不稳定版本
0.2.2 | 2024年2月20日 |
---|---|
0.2.0 | 2023年6月19日 |
0.1.0 | 2023年6月15日 |
#101 在 多媒体
70KB
1.5K SLoC
包含 (JAR 文件, 61KB) bundle/gradle/wrapper/gradle-wrapper.jar
itext-rs
Rust 对 Java 库 iText-PDF 的绑定。
目的
Rust 中生成 PDF 处于早期阶段。Java 的 PDF 世界已经相当成熟。此库允许 Rust 程序使用 iText PDF 创建 PDF。
编译
如果启用了 bundled
功能
- 应该已安装 JVM。
- 应设置环境变量
JAVA_HOME
。
使用
如果启用了 bundled
功能
当使用 JNI 的调用 API 时,应将此 crate 中嵌入的 JAR 文件添加到类路径
- 将 jarfile (const
bundle::DEPENDENCIES
) 保存到磁盘 - 将选项
-Djava.class.path=<PATH TO JARFILE>
添加到 JVM 的启动参数中。
如果没有启用 bundled
功能,则您需要为 JVM 提供itext-pdf库。
lib.rs
:
iText-rs
Rust 对 iText 7.1.18 库的绑定。
绑定
此库为以下 iText 类提供(部分)绑定
- com.itextpdf.io
- ImageData
- com.itextpdf.kernel
- PdfDocument
- PdfWriter
- SolidLine
- PageSize
- ColorConstant
- com.itextpdf.layout
- Document
- Table
- Cell
- Paragraph
- LineSeparator
- Image
为了支持 iText-PDF 类型,还包括了一些其他绑定
- java.io.ByteArrayOutputStream
- java.io.ByteArrayInputStream
- java.awt.image.BufferedImage
- javax.imageio.ImageIO
- javax.imageio.stream.ImageInputStream
欢迎提交补丁以添加缺少的绑定或完善不完整的绑定。
库
为了运行,此 crate 显然需要一个 JVM。此外,它还需要 iText 内核、布局和 io 库。这些库通过 bundled
功能包含在此 crate 中;一个包含所有依赖项的 JAR 文件随后包含在 itext::bundle::DEPENDENCIES
;
如果您使用JVM的调用API从代码中启动它,请将选项 -Djava.class.path=<路径到JAR文件>
添加到JVM的启动选项中。当然,为了使此功能正常工作,必须将依赖的jar文件保存到磁盘上。
许可证
此库根据您的选择,提供MIT或Apache 2.0许可证。
依赖项
~3–14MB
~127K SLoC