我是usig tess4j(net.sourceforge.tess4j:tess4j:4.4.0),并尝试对pdf文件进行OCR。 因此,据我了解,我必须先将pdf转换为tiff或png(建议使用其中的任何一个?),我这样做是什么:
tesseract.doOCR(PdfUtilities.convertPdf2Tiff(inputPdfFile));
并收到以下警告:
Warning: Invalid resolution 0 dpi. Using 70 instead.
问题
convertPdf
应该为我处理吗?答案 0 :(得分:1)
如果图像元数据中没有分辨率信息,则Tesseract会尝试自己估计分辨率,以便可以在结果中计算字体大小信息。
您可以尝试使用以下API来设置输入图像的分辨率:
instance.SetTessVariable("user_defined_dpi", "300");
或
TessBaseAPISetSourceResolution(TessBaseAPI handle, int ppi);
您可以通过以下方式禁止控制台输出:
instance.setTessVariable("debug_file", "/dev/null");
答案 1 :(得分:0)
未设置默认分辨率。
补充nguyenq的回答:
componentDidMount() {
const { navigation } = this.props;
this._unsubscribe = navigation.addListener('focus', () => {
//call your function that update component
});
}
componentWillUnmount() {
this._unsubscribe();
}