如何在彩色UIImage中绘制彩色线条?

时间:2011-06-28 15:37:58

标签: ios cocoa-touch uikit

我想在灰度图像中或上方绘制彩色线条。 下面的代码将执行此操作,但问题是UIImage被转换为RGB图像,但这导致我的灰度图像的丑陋表示。 目前我使用以下代码执行此操作:

// the  current class is a subclass of UIImageView
// start and end are predefined and of type CGPoint

UIGraphicsBeginImageContext(self.frame.size);
[self.image drawInRect:CGRectMake(0, 0, self.frame.size.width, self.frame.size.height)];


CGContextRef cont = UIGraphicsGetCurrentContext();
CGContextSetLineCap(cont, kCGLineCapButt);
CGContextSetLineCap(cont, 2.0f);
CGContextSetRGBStrokeColor(cont, 255, 0, 0, 1); 

CGContextBeginPath(cont);
CGContextMoveToPoint(cont, start.x, start.y);
CGContextAddLineToPoint(cont, end.x, end.y);

CGContextStrokePath(cont);

self.image = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();

现在我的问题是: 如何在不将其转换为RGB图像的情况下在UIImage中或上方显示彩色线?

0 个答案:

没有答案