我想繪製UIImageView
,以下是我的繪圖代碼。我的圖像視圖模式是方面適合的。當我使用以下代碼繪製時,由於我使用的是drawinrect
並給出了UIImageView
的矩形,所以所有圖像都縮小到imageview的大小。我想繪製圖像大小的圖像,而不是圖像視圖。由於我正在檢測圖像視圖上的觸摸點,因此點擊和實際繪製圖像的點是不同的。任何機構都可以告訴我如何直接繪製圖像。以及如何計算圖像上的觸摸點而不是圖像視圖的這種移位或差異。UIImageView直接繪製在圖像的大小,而不是圖像的視圖
-(void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event
{
UITouch *touch = [touches anyObject];
lastTouch = [touch locationInView:self];
}
-(void)touchesMoved:(NSSet *)touches withEvent:(UIEvent *)event
{
CGPoint currentTouch = [[touches anyObject] locationInView:self];
UIGraphicsBeginImageContext(self.image.size);
CGContextRef context = UIGraphicsGetCurrentContext();
[self.image drawInRect:CGRectMake(0, 0, self.image.size.width, self.bounds.size.height)];
CGContextSetLineCap(context, kCGLineCapRound);
CGContextSetLineWidth(context, _brushSize);
CGContextBeginPath(context) ;
CGContextMoveToPoint(context, lastTouch.x, lastTouch.y);
CGContextAddLineToPoint(context,currentTouch.x,currentTouch.y) ;
CGContextSetAlpha(context , 1);
CGContextSetStrokeColorWithColor(context, [_brushColor CGColor]);
CGContextStrokePath(context) ;
self.image = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
lastTouch = currentTouch;
}
感謝您的編輯:D是寫在我的iPhone上,所以當時無法格式化。 – Fogmeister