Closed c4ys closed 11 months ago
Please provide a minimal reproduction code.
let doc = PdfDocument::open(path.as_str()).unwrap();
let num_pages = doc.page_count().unwrap();
println!("Document has {} page(s)", num_pages);
let display_list: Vec<(usize, DisplayList)> = doc
.pages()
.unwrap()
.enumerate()
.map(|(index, p)| {
let display = p.unwrap().to_display_list(true).unwrap();
(index, display)
})
.collect();
上次是用mutool, 今天试了下用官方多线程也成功了.
https://github.com/ArtifexSoftware/mupdf/blob/master/docs/examples/multi-threaded.c
接下来我有空将mupdf-rs改写下看是否能成功.
Fixed in #61
mupdf相对pdfium以及xpdf一个优势是对多核渲染的支持, 在实际使用mupdf-rs过程中发现部分文件 page.to_display_list()发生Segmentation fault且没有提示, 使用官方mupdf和C++编译的mutool则不会发生错误.