如何擦除 iPhone 中自定义 UIView 上的手指画
我为手指绘画应用程序创建了一个自定义 UIView(没有 .xib)。 Paint 在自定义 UIView 上运行良好,但我的问题是,当我尝试擦除所绘制的路径时: 错误:上下文无效 下面是我的课: .h 文件 @interface draw2D : UIView { CGPoint previousPoint; CGPoint lastPoint; CG... »
我为手指绘画应用程序创建了一个自定义 UIView(没有 .xib)。 Paint 在自定义 UIView 上运行良好,但我的问题是,当我尝试擦除所绘制的路径时: 错误:上下文无效 下面是我的课: .h 文件 @interface draw2D : UIView { CGPoint previousPoint; CGPoint lastPoint; CG... »
我有一个包含大量 PDF 文件的 iPad 系统。对于每个 PDF 文件,我都会生成第一页的图像(以支持 UI 中的可视索引)。 我用来生成图像的代码已成功用于数千个不同的 PDF 文件。但是,我现在遇到了一个 PDF 文件,它可以在 Adobe Reader 中正常打开,但是当我尝试在 iOS 中生成图像时会导致错误的访问异常。导致问题的实际文档在这里:PDF document 我用来生... »
我正在尝试使用自定义字体创建新的 PDF。 我加载了我的自定义字体,我可以在所有应用程序中使用它,但是当我尝试使用它创建我的 PDF 时,系统字体被打印出来。 我正在使用 NSString UIKit Additions。 +(UIFont *)imagoBook:(float)size{ return [UIFont fontWithName:@"Imago-Book" size:... »
已在 CGContextRef 上绘制了图像: CGContextDrawImage(context, CGRectMake(0, 0, width, height), image); 在另一个函数中,我想将图像移动到矩形 CGRectMake(100, 100, width, height); 我该怎么办? void func(CGContextRef context)//ther... »
我创建了一个绘图 iOS 应用程序,我想在其中创建一个“保存图像”方法。 绘图发生在 touchesMoved: 方法中。 - (void) touchesMoved:(NSSet *)touches withEvent:(UIEvent *)event { UITouch *touch = [touches anyObject]; [self drawToCache:touch... »
我一直在尝试使用 CGContextDrawLinearGradient,但我对起点和终点的含义感到非常困惑?我认为它们的意思是当前 CGContext 上的坐标,所以如果我将起点定义为 0,0 并将终点定义为 100,100,我会得到一个带有渐变的正方形。我得到了完全无法连接到我的坐标的其他东西。 这是我的代码: - (void)drawRect:(CGRect)rect { // Draw... »
我在我的地图视图中使用自定义标注自定义了图钉。 在地图上绘制路径时,路线会经过标注和图钉。附上图片。 我已经使用google API获取折线并在解码后绘制它。 代码如下: if(!routeView) routeView = [[UIImageView alloc] initWithFrame:CGRectMake(0, self.mapView.frame.origi... »
我是Objective-C的新手,但是我需要写一个快速的方法,它将一个UIImage分成固定大小的正方形块,然后混合它们。我已经通过以下方式实现了它: 获取 UIImage 将其表示为 PNG 将其转换为 RGBA8 无符号字符数组 对于每个块,计算其坐标,然后将每个像素与被替换的块中的像素进行异或操作 将 RGBA8 肉重新组装到新的 UIImage 中 退货 它按预期工作,但速度极慢。在... »
通常,我只会使用 NSOpenGLContext,但在这种情况下,我必须拥有一个 CGContextRef 作为 OpenGL 上下文,以支持我正在使用的其他一些框架。我的问题是:这可以做到吗? 我不能使用 glReadPixels() 来填充上下文,因为这样做会方式变慢。我必须在整个屏幕 (1440 x 900) 上每秒至少渲染 32 次,所以性能对我来说是一个非常重要的问题。有没有办法让 O... »
我想根据不同的用户动作动态改变当前的CGContextRef?这是可能的还是只能在视图实例的drawRect: 内进行修改?当我在drawRect: 之外拨打UIGraphicsGetCurrentContext() 时会发生什么,这样做有什么限制吗,是否推荐?我需要考虑任何可能的影响?... »
我有一个 uiview B,它是另一个 uiview A 的放大部分(“touchPoint”周围的区域被放大)。 当“touchPoint”发生变化时,我希望 B 更新其显示。我在 B 中有以下函数并且它确实更新了(当我调用 B.setNeedsDisplay() 时),但它使旧内容以某种方式可见,就像褪色的背景图像一样。 你们知道为什么旧的内容仍然出现,为什么会出现这种褪色的效果吗? 是因为我... »
问题是: 在 iPhone7 上工作时, 我从UIView 得到CGContextRef,那么bitsPerPixel 是64。因为我的 .a 只能使用 bitsPerPixel 为 32 的传统 RGB 颜色空间位图缓冲区, 有人知道如何将色彩空间为广色域的CGContextRef 转换为tranditional CGContextRef,就像在iPhone6 上一样吗? ... »
我正在尝试绘制一个矩形,它应该具有宽度为 5.0 的黑色边框,我得到的矩形如下所示, CGContextRef context = UIGraphicsGetCurrentContext(); CGContextStrokePath(context); CGContextSetRGBFillColor(context, 0.0, 1.0, 0.0, 0.5); CGContextFillRect... »
有人知道如何为 iOS 8 更新此代码吗?我收到此错误消息: CGBitmapContextCreate: unsupported parameter combination: 8 integer bits/component; 32 bits/pixel; 3-component color space; kCGImageAlphaPremultipliedFirst; 4294967289 ... »
我对以下代码的工作方式感到困惑。 预计会产生一个被彩色圆圈包围的黑色圆盘。 它适用于某些颜色(如 cmets 中所述),但不适用于其他颜色。 谁能解释这种神秘的行为? - (void)drawRect:(CGRect)rect { CGRect rectangle; CGFloat shiftVal=2.0,lineWidth=3.0; rectangle.origin=CGPo... »
我正在尝试为我在 Objective-c 中编写的一个类创建随机生成的图像,并且只是希望对不同的图像属性和类型有所了解。 我想创建以下函数: -(UIImage*)randomlyGenerateAnImage; 此函数将使用成员数据创建一个准随机算法生成的 UIImage。 我真的很难理解 UIImages、CGRects 和 CGContextRefs 之间的关系。哪个是我绘制的,... »
我正在尝试编写一个 UIView drawRect: 方法,该方法调用一个辅助方法来绘制渐变填充,其中包含我传递给它的一些参数: -(void)drawRect:(CGRect)rect { CGContextRef ctx = UIGraphicsGetCurrentContext(); /* code to set up color array, position poin... »
我正在制作一个 iPhone 应用程序,其中用户用手指在 iPhone 屏幕上绘图 在 ViewController1 上,我正在显示从另一个 UIView 类继承的视图 我将所有触摸移动点存储在一个数组中 在这个视图中,用户用手指绘制 然后用户在另一个视图 ViewController2 上导航 然后在 ViewController3 上,我想在图像上重绘该视图上的点,但这次我得到错误 ... »
我正在用这段代码截屏 - (UIImage *)screenshot { UIGraphicsBeginImageContext(self.bounds.size); [self.layer renderInContext:UIGraphicsGetCurrentContext()]; UIImage *image = UIGraphicsGetImageFromCurr... »
我正在尝试使用CGBitmapContextCreate 创建一个CGContextRef。我要创建的位图是 RBG565(红色和蓝色是 5 位,绿色是 6 位)。 CGBitmapContextCreate 的参数之一是bitsPerComponent。由于我有变量bitsPerComponent,我不确定我是否只是将其设置为 5,还是有更好的方法来做到这一点? 谢谢。... »