Tag: pdf

在ios9上显示uiwebview中的pdf有时滚动卡住了

我正在开发一个用swift编写的ios应用程序,xcode7 一个视图上有一个UIWebView 。 使用loadRequest(NSURLRequest)我们从磁盘加载一个PDF文件。 这工作正常,但有时PDF文件不能滚动通过第一页或你看到的第一个在屏幕上。 我无法确定是什么原因导致不滚动,因为有时我再次打开同一个文件,然后滚动。 试图滚动,当它不想弹跳屏幕的底部,你可以看到有另一个页面,但你不能滚动到视图。 UIWebView包含的UIScrollView (这是默认的)知道有更多的页面,因为它在屏幕上显示“1的3”。 UIWebView 有'缩放页面适合'检查 已启用'用户交互'检查 有'多点触摸'不检查 有'autoresize子视图'选中 有模式'填充比例' 我已经尝试了以下内容: 通过在屏幕上放置一个边框检查滚动视图是否不大于屏幕:不,它适合在屏幕上,并且与您期望的一样大 在代码中将内部UIScrollView.scollEnabled设置为true 在应用程序中,当显示UIWebview ,它通过折叠上面的元素来在屏幕上resize,但是我已经用固定的高度testing了它,并且它不改变任何东西。 当我在内部UIScrollView上调用flashScrollIndicators()时,这与滚动或不滚动一致。 如果您看到滚动条闪烁,则可以滚动。 如果没有,那么你不能滚动过去的第一页。 任何其他的想法,我可以尝试?

按照原样从uitextview绘制文本到pdf

我有4个可编辑的uitextviews,用户可以设置其字体的字体颜色等现在我想绘制这些textviews的pdf,但使用[self.view.layer renderInContext:UIGraphicsGetCurrentContext()]方法导致失去其质量,所以我不能使用这种方法,而是我遍历子视图,并在pdf中绘制文本。 现在我的问题是,对于一些textviews文本正确打印在pdf中,但对于其他textviews文本没有绘制在适当的位置。这是我的代码从textview绘制pdf。 NSArray * arrayOfsubviews = [self.view subviews]; for (int i=0; i<[arrayOfsubviews count]; i++) { if ([[arrayOfsubviews objectAtIndex:i]isKindOfClass:[UITextView class]]) { UITextView *texts=[arrayOfsubviews objectAtIndex:i]; CTFontRef ctFont = CTFontCreateWithName((__bridge CFStringRef)texts.font.fontName, texts.font.pointSize,NULL); CGColorRef color = texts.textColor.CGColor; NSDictionary *attributesDict = [NSDictionary dictionaryWithObjectsAndKeys: (__bridge id)ctFont, (id)kCTFontAttributeName, color, (id)kCTForegroundColorAttributeName,nil]; NSAttributedString *stringToDraw = [[NSAttributedString alloc] initWithString:texts.text attributes:attributesDict]; CTFramesetterRef framesetter = CTFramesetterCreateWithAttributedString((__bridge […]

在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 *) […]

将多个pdf文档合并成单个文档不起作用

我试图将11个PDF文件合并成一个PDF文件。我正在使用下面的代码,但在最后的PDF只显示第一个pdf文件…我nslogged pdfurls和CGPDFDocumentRef在循环中,他们不是零(在循环中)。可能是为什么在最终文档中只显示第一页的原因 -(void)mergeDocuments { NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES); NSString *documentsDirectory = [paths objectAtIndex:0]; // Get documents folder NSString *oldFile=[documentsDirectory stringByAppendingPathComponent:@"finalPdf.pdf"]; NSMutableData *data=[[NSMutableData alloc] init]; CGRect paperSize=CGRectMake(0,0,kDefaultPageWidth,kDefaultPageHeight); UIGraphicsBeginPDFContextToData(data, paperSize, nil); for (int pageNumber = 1; pageNumber <= 11; pageNumber++) { NSString *pdfPath = [[documentsDirectory stringByAppendingPathComponent:[NSString stringWithFormat:@"page_%d.pdf",pageNumber]] retain]; NSURL *pdfUrl = [[NSURL fileURLWithPath:pdfPath] retain]; UIGraphicsBeginPDFPageWithInfo(paperSize, […]

searchPDF的文本

当parsing一个PDF,给定一个string(从Tj或TJ操作符callback)与身份H编码如何映射该string到一个Unicode(如UTF8)表示? 如果我需要一个CMap,我该如何创build(或检索)并应用CMap?

在iPhone上将整个pdf页面parsing为NSString

我一直试图parsing一个文本的PDF页面到NSString一段时间,我唯一能find的方法是search特定的string值。 我想要做的是parsing一个PDF页面,而不使用任何外部库,如PDFKitten,PDFKit等 如果可能,我想在NSArray,NSString或NSDictionary中有数据。 感谢:D! 到目前为止我尝试过的一块。 CGPDFDocumentRef MyGetPDFDocumentRef (const char *filename) { CFStringRef path; CFURLRef url; CGPDFDocumentRef document; path = CFStringCreateWithCString (NULL, filename,kCFStringEncodingUTF8); url = CFURLCreateWithFileSystemPath (NULL, path, kCFURLPOSIXPathStyle, 0); CFRelease (path); document = CGPDFDocumentCreateWithURL (url);// 2 CFRelease(url); int count = CGPDFDocumentGetNumberOfPages (document);// 3 if (count == 0) { printf("`%s' needs at least one page!", filename); […]

如何渲染一个复杂的UIView到高分辨率的PDF上下文?

关于如何将UIView渲染到PDF上下文中,有几个问题,但他们都使用view.layer.renderInContext(pdfContext),这导致72 DPI图像(打印时看起来很糟糕)。 我正在寻找的是一种技术,以某种方式让UIView呈现像300 DPI的东西。

Xcode生成不同颜色的PNG格式PDF

我们在下面的文章中使用在iOS项目中的pdfvector资源: http : //martiancraft.com/blog/2014/09/vector-images-xcode6/ 但是我们遇到了问题。 如果我们在Photoshop / Illustrator中将颜色设置为#039AF0,则导出的pdf将生成#1185ec颜色的png。 如果我们使用旧的PNG方式,那么颜色是好的(请忽略像素化的图像,最重要的是颜色): 可能是什么原因?

以PDF格式生成表格

我想在PDF中创build一个表格,其中的数据来自我的iPhone应用程序。 我怎样才能做到这一点?

如何控制页面显示为UIWebView for iOS加载的PDF(转到页面)

我正在开发一个应用程序,显示embedded在WebView中的PDF这是我的代码: – (void)viewDidLoad { [super viewDidLoad]; NSURL *urlremoto = [NSURL URLWithString:@"https://developer.apple.com/library/ios/documentation/userexperience/conceptual/TransitionGuide/TransitionGuide.pdf"]; request = [NSURLRequest requestWithURL:urlremoto]; [self.webView loadRequest:request]; [self.webView setScalesPageToFit:YES]; } -(void)webViewDidStartLoad:(UIWebView *)webView{ [self.activityIndicator startAnimating]; } -(void)webView:(UIWebView *)webView didFailLoadWithError:(NSError *)error{ //TODO: describir el error [self.activityIndicator stopAnimating]; } -(void)webViewDidFinishLoad:(UIWebView *)webView{ [self.activityIndicator stopAnimating]; } 现在我想触摸一个button,并将我加载的PDF更改为特定的页面,我正在寻找的东西来实现这一点,但仍然没有任何工作 在此先感谢您的支持