2011-04-04 173 views
5

我试图从PDF文件插入并阅读qrcode。要从我使用zxing project的图像创建/读取qr代码并操纵我使用的pdf,请使用Big Faceless PDF从扫描的PDF阅读QR代码

如果我创建QR代码,插入到我的PDF中,然后从PDF中读取图像并将正确的代码转换为QR代码,则一切正常。 但是,如果我尝试从扫描的文档中读取图像(使用qr代码贴纸附加到它),我无法从pdf获得qr代码图像(使用Big Faceless PDF,我可以获得的唯一图像是它自己的文件)。

有没有人知道一个Java库来搜索PDF文件的二维码?

感谢您帮助

回答

2

唯一可靠的方式做到这一点是PDF页面转换为位图,然后使用类似斑马线扫描整个页面的条形码。提取构成页面的单个图像不适用于每个文档:条形码可能是使用图形操作而不是作为嵌入式图像创建的(我们是这么做的),或者如果您从纸张来源扫描PDF你已经描述过,它通常会是一个大的形象。

一旦将PDF转换为位图,ZXing应该能够做到这一点,至少在理论上是这样。当然我建议坚持与我们一起转换为位图;-)

如果ZXing在查找代码时遇到问题,请确保它周围有足够的空白区域 - 所以您需要四边都有清晰的模块,所以对于较小的代码,它应该大约是代码周围空白代码宽度的10%,以帮助扫描。

干杯...迈克(CTO @ BFO)

+0

嗨迈克。我实际上使用ICEPdf将PDF页面转换为BufferedImage。我试图使用BFO,但是你对这个主题的文档有点抽象。你想举个例子吗? :) – 2011-04-06 08:51:52

+0

'PDF pdf = new PDF(new PDFReader(new File(“in.pdf”)));PDFParser parser = new PDFParser(pdf); PagePainter painter = parser.getPagePainter(pagenumber); BufferedImage image = painter.getBufferedImage(dpi,PDFParser.RGBA);' 没什么大不了!如果您需要更多信息,请发邮件给我们支持。 – 2011-04-20 17:12:31