使用Rust生成PDF文档的方法与示例
最近在学习Rust语言,想用它来生成PDF文档,但不知道有哪些可用的库和方法。请问有没有比较成熟的Rust库可以推荐?最好能提供一些简单的代码示例,比如如何创建PDF文件、添加文字和图片等基本操作。另外,在实际项目中生成PDF时需要注意哪些性能或兼容性问题?
2 回复
推荐使用 printpdf 库。示例代码如下:
use printpdf::*;
fn main() -> Result<(), Box<dyn std::error::Error>> {
let (doc, page1, layer1) = PdfDocument::new("PDF_Document_title", Mm(210.0), Mm(297.0), "Layer 1");
let font = doc.add_builtin_font(BuiltinFont::TimesRoman)?;
let text = "Hello PDF!";
layer1.use_text(text, 14.0, Mm(20.0), Mm(270.0), &font);
doc.save(&mut std::fs::File::create("test.pdf")?)?;
Ok(())
}
需要先在 Cargo.toml 中添加依赖:
[dependencies]
printpdf = "0.4.0"
运行后会生成包含“Hello PDF!”文本的PDF文件。


