2

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

所以现在我想给他们的线条加上发光效果,那我该怎么做呢?

提前致谢。

4

2 回答 2

3

将图形上下文中的阴影设置为具有零大小偏移、大约 6-10 的模糊(根据口味更改)以及与笔触颜色相同的颜色。这将为所有后续绘图提供发光效果。命令是

CGContextSetShadowWithColor()

记录在这里

于 2012-04-05T07:54:03.693 回答
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];


}
于 2012-07-06T10:05:10.063 回答