實現傾斜文字水印背景

  早上羣裏有人問:斜體文字水印背景,文字不肯定的怎麼作。恰好前段時間作過,特此分享下並記錄。spa

  其主要原理是利用UIColor類的一個方法:把圖片變成顏色。code

[[UIColor alloc] initWithPatternImage:xxxxx];

該方法會把圖片平鋪變成一個顏色實體。orm

  代碼產生一張傾斜文字圖片:blog

- (UIImage *)imageWithText:(NSString *)text{
    
    /**
     這裏之因此外面再放一個UIView,是由於直接用label畫圖的話,旋轉就不起做用了
     */
    UIView *view = [[UIView alloc] initWithFrame:CGRectMake(0, 0, 100, 100)];
    view.backgroundColor = [UIColor clearColor];
    
    UILabel *label = [[UILabel alloc] initWithFrame:view.bounds];
    label.backgroundColor = [UIColor clearColor];
    label.textColor = [UIColor orangeColor];
    label.text = text;
    label.transform = CGAffineTransformMakeRotation(-M_PI/4.0);
    [view addSubview:label];
    
    
    UIGraphicsBeginImageContextWithOptions(view.bounds.size, NO, [UIScreen mainScreen].scale);
    [view.layer renderInContext:UIGraphicsGetCurrentContext()];
    UIImage *image=UIGraphicsGetImageFromCurrentImageContext();
    UIGraphicsEndImageContext();
    
    return image;
}

  好了,能夠用了:view.backgroundColor = [[UIColor alloc] initWithPatternImage:[self imageWithText:@"文字傾斜"]];圖片

  效果圖:it

      

相關文章
相關標籤/搜索