Tag: quartz 2d

iOS使用Quartz旋转UIImage

我有一个自定义的UIView子类 – (void)drawRect:(CGRect)rect 我想在位置50,50绘制一个UIImage,并旋转20度。 我试了下面的代码: CGContextRef context = UIGraphicsGetCurrentContext(); CGContextSaveGState(context); CGContextRotateCTM (context, degreesToRad(20)); [image drawAtPoint:CGPointMake(50, 50)]; CGContextRestoreGState(context); 它正确旋转图像,但它不是在50,50 … 如何在保持正确坐标的同时旋转UIImage?

我可以以编程方式将链接注释添加到PDF中吗?

我正在制作一个使用UIWebView来显示PDF的iPad应用程序。 我有一个PDF,我想以编程方式添加链接。 为了简单起见,可以说有10个段落。 他们都编号,并在其中有几行文字。 我想能够以某种方式添加到PDF的基本链接,以便如果第2段被触摸,那么我的UIWebView可以处理与段落2相关联的请求。 我不知道里面的PDF结构是什么样的。 我不知道如何把这个扩大到几百页的每一段。 但我想知道如果我可以添加一个链接或HTML到PDF,以便我可以操纵它与我的应用程序。 谢谢! 要清楚的是,我正在iOS设备上查看这个PDF,但是我认识到我的问题的解决scheme可能与Cocoa-touch框架没有任何关系。 我正在寻找任何types的解决scheme,将允许我添加到我的PDF的某些领域的不可见链接。

在后台线程读CGImageRef崩溃的应用程序

我有一个很大的JPEG图像,我想在我的opengl引擎asynchronous加载瓷砖。 如果它在主线程上完成,但一切都很好,但速度很慢。 当我试图把加载在一个NSOperationBlock的瓷砖,它总是崩溃时,试图访问我以前加载在主线程上的共享图像数据指针。 必须有一些我不能与后台操作,因为我假设我可以访问我在主线程上创build的内存部分。 我试图做的是以下几点: @interface MyViewer { } @property (atomic, assign) CGImageRef imageRef; @property (atomic, assign) CGDataProviderRef dataProvider; @property (atomic, assign) int loadedTextures; @end … – (void) loadAllTiles:(NSData*) imgData { queue = [[NSOperationQueue alloc] init]; //Loop for Total Number of Textures self.dataProvider = CGDataProviderCreateWithData(NULL,[imgData bytes],[imgData length],0); self.imageRef = CGImageCreateWithJPEGDataProvider(self.dataProvider, NULL, NO, kCGRenderingIntentDefault); for (int […]

UIGraphicsBeginPDFPage()在64位设备上随机崩溃(CGPDFSecurityManagerCreateDecryptor())

我正在努力使用PDF导出方法,直到我将应用程序移植到arm64架构。 Bacisally,该方法打开一个现有的PDF,它创build一个新的PDF文件,并绘制第一个PDF的内容到新创build的一个,然后添加更多的内容页面。 当该方法尝试创build一个新的pdf页面到文档(在第一个pdf被集成到新的pdf之后),该应用程序在UIGraphicsBeginPDFPage()上出现EXC_BAD_ACCESS警告。 打电话。 它只发生在一些PDF文件,不是所有的,只在64位设备上。 下面是显示CGPDFSecurityManagerCreateDecryptor()调用的堆栈跟踪,我找不到它的function。 Thread 14Queue : NSOperationQueue 0x14f6dd3a0 :: NSOperation 0x17504a470 (serial) #0 0x00000001838aeee4 in CGPDFSecurityManagerCreateDecryptor () #1 0x00000001838d1004 in pdf_filter_chain_create () #2 0x0000000183831e00 in CGPDFStreamCreateFilterChain () #3 0x000000018383226c in chain_get_bytes () #4 0x0000000183b5e0ac in unpackImageRow () #5 0x0000000183b5dfd4 in PDFImageEmitData () #6 0x0000000183b5f684 in emit_image () #7 0x0000000183b5ef9c in PDFImageEmitDefinition () […]

CoreAnimation,在iOS 5 Xcode 4中移动带有animation阴影的UIImageView

我试图为图像添加一个(假的)3D效果(UIImageView从A点移动到B,在这个移动过程中,我想在点C =(A + B)/ 2,因为它具有最大的影子尺寸更大的阴影偏移),所以它看起来像是再次上升和下降,当我试图甚至改变阴影大小,它不是animation,你能帮助我如何编辑此代码: NSValue *pointB = [NSValue valueWithCGPoint:CGPointMake(CGRectGetMinX(imageView.frame)+50, CGRectGetMinY(imageView.frame)+50)]; [self.view bringSubviewToFront:ImageView]; [UIView beginAnimations:@"UIImage Move" context:NULL]; CGPoint point = [pointB CGPointValue]; CGSize size =imageView.frame.size; [UIView setAnimationDuration:1.0]; imageView.frame = CGRectMake(point.x, point.y, size.width, size.height); imageView.layer.shadowOffset = CGSizeMake(0, 4); //actually I want this to happen in mid point and revert to offset 1 [UIView commitAnimations]; //sorry for […]