#import <UIKit/UIKit.h>

@interface DTGlowingLabel : UILabel

{

    UIColor *_outLineColor;

    UIColor *_insideColor;

    UIColor *b_lurColor;

}

@property (nonatomic, retain) UIColor *outLineColor;

@property (nonatomic, retain) UIColor *insideColor;

@property (nonatomic, retain) UIColor *blurColor;

@end

 

 

.m

#import "DTGlowingLabel.h"

@implementation DTGlowingLabel
@synthesize insideColor  = _insideColor;
@synthesize outLineColor = _outLineColor;
@synthesize blurColor    = _blurColor;
- (id) init
{
    if(self=[super init])
    {
        
    }
    return self;
}

- (void) drawRect:(CGRect)rect
{
    CGContextRef ctx = UIGraphicsGetCurrentContext();
    CGContextSetStrokeColorWithColor(ctx, _outLineColor.CGColor);
    CGContextSetFillColorWithColor(ctx, _insideColor.CGColor);
    CGContextSetLineWidth(ctx, self.font.pointSize/60.0);
    CGContextSetShadowWithColor(ctx, CGSizeMake(0, 0), self.font.pointSize / 10.0, _blurColor.CGColor);
    CGTextDrawingMode mode = (_outLineColor==nil)? kCGTextFill: ((_insideColor==nil)?kCGTextStroke:kCGTextFillStroke);
    CGContextSetTextDrawingMode(ctx, mode);
    [self.text drawInRect:self.bounds withFont:self.font lineBreakMode:self.lineBreakMode alignment:self.textAlignment];
}
- (void)dealloc
{
    [super dealloc];
    [self.insideColor  release];
    [self.outLineColor release];
    [self.blurColor    release];
}
@end

相关文章:

  • 2021-06-03
  • 2021-05-24
  • 2017-12-17
  • 2021-05-08
  • 2021-08-25
  • 2021-12-07
  • 2021-09-05
  • 2022-12-23
猜你喜欢
  • 2022-12-23
  • 2021-09-18
  • 2021-09-28
  • 2021-04-16
  • 2021-10-18
  • 2021-04-11
相关资源
相似解决方案