Tag: 表单字段

在Objective-C中从PDF中提取可编辑字段

我一直在研究在iOS应用程序中使用PDF的一段时间。 我已经想出了一些难题,比如扫描操作符并在UIWebView中显示PDF。 但是,我真正需要做的是识别PDF文档中的可编辑字段 。 理想情况下,我希望能够直接与田野互动,但这听起来非常困难,而不是一个明显的第一步。 我已经与一个Windows服务交互,这个服务可以以这种方式处理PDF,并且可以用来识别可编辑字段,在表单视图中从用户收集字段数据,并将这些数据发回服务器。 问题是我看不到如何识别字段。 我正在与政府颁发的PDF(例如I-9和W-4)交互,所以我不能控制PDF的创build或字段的命名。 这就是为什么我需要dynamic提取它们。 任何帮助和/或参考将不胜感激。 我使用苹果的“Quatrz二维编程指南”(https://developer.apple.com/library/mac/#documentation/graphicsimaging/conceptual/drawingwithquartz2d/dq_pdf_scan/dq_pdf_scan.html“PDF文档分析”)触发操作员callback扫描PDF时,但这不帮我find可编辑的领域。 我也简单地加载一个UIWebView的PDF数据显示给用户。 [_webView loadData:decodedData MIMEType:@"application/pdf" textEncodingName:@"utf-8" baseURL:nil]; 更新: 我构build了PDF助手类(如下所示)来遍历目录中的所有可能的对象types。 最初我没有处理数组中的嵌套字典,所以我没有看到表单字段。 一旦我解决了这个问题,我意识到有父引用,我必须说明,以避免循环recursion调用,将启动一个无限循环。 下面的代码显示了文档目录中丰富的信息。 现在我只需要parsing它来隔离我需要的表单字段。 PDFHelper.h #import <Foundation/Foundation.h> id selfClass; @interface PDFHelper : NSObject @property (nonatomic, strong) NSData *pdfData; @property (nonatomic, strong) NSMutableDictionary *pdfDict; @property (nonatomic) int catalogLevel; -(NSArray *) copyPDFArray:(CGPDFArrayRef)arr referencingDictionary:(CGPDFDictionaryRef)dict referencingKey:(const char *)key; -(NSArray *) […]