从NSString中的pdf获取文本

时间:2012-12-26 07:22:43

标签: objective-c ios

我正在尝试创建一个iOS应用程序,它将从pdf文件中提取纯文本并将其显示在UITextView中。它不是一个pdf阅读器来查看pdf文件,但我后来希望对该文本执行某些操作。 我已经搜索了很多,但仍无法得到确切的解决方案。

我已尝试使用https://github.com/zachron/pdfiphone 但文件使用的是ARMV6架构,这似乎已经过时了xcode 4.5

如果有人可以使用iOS的Quartz-2d框架建议一些准确且非混乱的代码,那么它会很棒。

3 个答案:

答案 0 :(得分:2)

Here是从PDF中提取文本的示例代码,希望这可能会帮助您。

https://github.com/zachron/pdfiphone

这是一个用于从iPhone获取PDF文本的库。

另一个演示是使用OCR technology找到下面的链接

https://github.com/nolanbrown/Tesseract-iPhone-Demo

同时检查his pageQuartz 2D Programming Guide,它涵盖了在iOS中打开和解析PDF文件所需的一切。请注意,这不是一项简单的任务,因为没有方法可以在一行中提取全文。您必须使用CGPDFScanner

将数据作为输入流处理

其他两个图书馆

  1. https://github.com/KurtCode/PDFKitten/
  2. https://github.com/mobfarm/FastPdfKit

答案 1 :(得分:1)

这个问题一直存在。一般来说,从PDF中提取文本非常困难。 PDF规范的设计并未考虑文本提取。有许多库试图完成这项工作,主要是通过从各个字形的几何位置重建文本。这些库有不同程度的成功,但在某些PDF文档上都会失败。实际上,某些PDF文档具有字形但无法将字形与字符相关联。对于这些文档,除了使用某种OCR方法之外,根本无法提取文本。

PDF被设计为只读格式,可以在任何平台上以相同方式呈现PDF文档。这就是它最擅长的,它应该用于什么。

如果要编辑文本,请不要使用PDF。

答案 2 :(得分:0)

Here (Extracting text from pdf using objective-c),我找到了你问题的答案并且有效。但不是我需要的那么好:(

  • 它只能提取ascii
  • 它只返回一段
祝你好运。