对于一个小项目,我试图从不包含数据的扫描PDF文件中读取一些数据。
按照Tesseract软件包的说明,下面的代码应该有效。 不幸的是,它会触发错误。
tiff :: writeTIFF错误(位图," page.tiff"): INTEGER()只能应用于'整数'而不是' raw'
有关如何解决这个问题的任何线索?
library(pdftools)
library(tiff)
library(tesseract)
# A PDF file with some text
setwd(tempdir())
news <- file.path(Sys.getenv("R_DOC_DIR"), "NEWS.pdf")
orig <- pdf_text(news)[1]
# Render pdf to jpeg/tiff image
bitmap <- pdf_render_page(news, dpi = 300)
tiff::writeTIFF(bitmap, "page.tiff")
# Extract text from images
out <- ocr("page.tiff")
cat(out)
答案 0 :(得分:0)
也许使用pdf_convert()
代替pdf_render_page()
,即:
library(pdftools)
# A PDF file with some text
setwd(tempdir())
news <- file.path(Sys.getenv("R_DOC_DIR"), "NEWS.pdf")
orig <- pdf_text(news)[1]
# Render pdf to jpeg/tiff image
pdf_convert(news, format = "tiff")
这会在目录中生成多个tiff,因此您应该添加一个代码来逐个读取和处理所有这些tiff。