在iPad App中绘制具有发光效果的线条

时间:2012-04-05 07:43:13

标签: iphone objective-c ipad

我在我的应用程序中集成了绘制线,我没有使用OpenGL或任何其他类似的框架。

所以现在我想给他们的线条发光效果,那么我该怎样才能给它?

提前致谢。

2 个答案:

答案 0 :(得分:3)

在图形上下文中设置阴影,使其具有零大小的偏移,大约6-10的模糊(根据品味变化)和与笔触颜色相同的颜色。这将为所有后续绘图提供发光效果。命令是

CGContextSetShadowWithColor()

记录here

答案 1 :(得分:1)

-(void)drawRect:(CGRect)rect{

[curImage drawAtPoint:CGPointMake(0, 0)];

 CGPoint mid1 = midPoint(previousPoint1, previousPoint2); 

 CGPoint mid2 = midPoint(currentPoint, previousPoint1);

    CGContextRef context = UIGraphicsGetCurrentContext(); 

    [self.layer renderInContext:context];

    CGContextMoveToPoint(context, mid1.x, mid1.y);
    // Use QuadCurve is the key
    CGContextAddQuadCurveToPoint(context, previousPoint1.x, previousPoint1.y, mid2.x, mid2.y); 

    CGContextSetLineCap(context, kCGLineCapRound);
    CGContextSetLineWidth(context, self.lineWidth);
    CGContextSetStrokeColorWithColor(context, self.lineColor.CGColor);
        //------------  Glow Lines ----------

    if (appDel.BrushType == 201) // (201 is glow brush type)
    {
        CGContextSetLineWidth(context, 7);

        CGColorSpaceRef space = CGColorSpaceCreateDeviceRGB();

        CGFloat components[4]={appDel.R_color/255.0,appDel.G_color/255.0,appDel.B_color/255.0,1.0};
        CGColorRef color1 = CGColorCreate(space, components);

        CGContextSetShadowWithColor(context, CGSizeMake( 0.0, 0.0 ), 15, color1);

        CGContextStrokePath(UIGraphicsGetCurrentContext());

    }
    //--------------
    CGContextStrokePath(context);
    [super drawRect:rect];

    [curImage release];


}