0

使用 Core Graphics,我想要绘画应用程序功能,在这里用户可以拥有自定义图像图案绘制功能。我按照以下代码段进行操作:

enter code here
  UIGraphicsBeginImageContext(self.view.frame.size);
    [drawImage.image drawInRect:CGRectMake(0, 0, self.view.frame.size.width, self.view.frame.size.height) blendMode:kCGBlendModeNormal alpha:1.0f];
  [T_BImage drawAtPoint:CGPointMake(rotX-(T_BImage.size.width)/2, rotY-(T_BImage.size.height)/2) blendMode:kCGBlendModeNormal alpha:1.0f];

drawImage.image = UIGraphicsGetImageFromCurrentImageContext(); UIGraphicsEndImageContext(); . 这里,是输出。但是,当用户在屏幕上连续快速拖动时,图像不会按顺序绘制,而相同的代码在缓慢拖动时可以正常工作

任何帮助将不胜感激。

4

2 回答 2

0

您的代码的问题是随着拖动速度的加快,将持续调用相同的方法,这可能会导致速度变慢。如果您打算绘制图案图像,我建议您尝试在此处查看苹果示例代码

您必须将上述示例项目中的图案图像替换为您的自定义图案图像。看看情况如何。需要注意的一点是图案图像必须是方形的(相同的宽度和高度)

于 2013-09-13T07:57:38.077 回答
0

最后,图像的绘制与用户的绘制速度成正比。这是通过计算 touches_began 和 touches_moved 委托方法之间的最小点集来实现的。即从最小(开始)CGPoint 到最大(在移动或结束之间)点的所有可能点集都是手动校准的,并且这些点通过图像传递绘图功能与单独的线程同时进行。

感谢 Brad-Larson 的出色表现。 回复

于 2013-09-19T11:43:59.973 回答