我使用MuPDF从pdf文件中提取一些文本。大多数情况下,它工作得很好,但偶尔最后一行将不提取或不打印。
fz_text_sheet *sheet = fz_new_text_sheet(self.ctx);
fz_text_page *text = fz_new_text_page(self.ctx, &fz_empty_rect);
fz_device *dev = fz_new_text_device(self.ctx, sheet, text);
fz_page *page = fz_load_page(self.doc, pageNumber);
fz_run_page(self.doc, page, dev, &fz_identity, NULL);
fz_output *out = fz_new_output_file(ctx, stdout);
fz_print_text_page_html(ctx, out, text);
这个PDF的第一页无法打印该页上的最后一行文本。
是我做错了什么还是这是一个bug?
谢谢!
在可以安全地使用fz_text_page之前,需要释放文本设备。设备中可能有一些缓冲的东西,在被释放之前不会被刷新。