定制图案铅笔素描图

Posted

技术标签:

【中文标题】定制图案铅笔素描图【英文标题】:Custom Pattern Pencil Sketch Drawing 【发布时间】:2013-09-13 07:24:16 【问题描述】:

使用Core Graphics,我想要绘画应用程序功能,在这里用户可以拥有自定义图像图案绘制功能。我按照进行的sn-p:

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(); 这里,是输出。 但是,当用户在屏幕上连续快速拖动时,图像不会按顺序绘制,而相同的代码在慢速拖动时可以正常工作

任何帮助将不胜感激。

【问题讨论】:

【参考方案1】:

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

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

【讨论】:

谢谢纳雷什。我试过了,但它只需要我图像的左下角像素。另外,我只拍摄了方形尺寸的图像。 你的图案图片尺寸是多少? 我只是仔细检查了一遍。看来我错了。图像必须是 2 的幂(16、32、64 等)才能以这种方式绘制。试着把它放在这样的尺寸上,让我知道这是否适合你。 仅供参考,它只是绘制 RGB 的阴影,但不考虑任何图案。请仔细检查。感谢您的重新考虑。 图片大小为32x32【参考方案2】:

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

感谢 Brad-Larson 的出色表现。 response

【讨论】:

以上是关于定制图案铅笔素描图的主要内容,如果未能解决你的问题,请参考以下文章

洛谷——P1909 [NOIP2016 普及组] 买铅笔

使用Python,OpenCV制作不同风格的素描图(正常,漫画,写实风格)

P1909 买铅笔 倍增思想

买铅笔(NOIP2016 普及组第一题)

铅笔线的阻抗有多大?

一行代码实现灰色铅笔画彩色铅笔画和卡通画效果(C++/Python OpenCV源码)