
圖片中:
第一個(gè)是用CATextLayer實(shí)現(xiàn)的;
第二個(gè)是用UILabel和CAGradientLayer實(shí)現(xiàn)的文字的漸變色;
第三個(gè)是用CAGradientLayer實(shí)現(xiàn)的;
CALayer篇:
用的是文章CAGradientLayer繪制漸變色中技術(shù),但是這次的目的主要講一下CATextLayer,以及CALayer的mask這個(gè)屬性;
//CATextLayer 顯示文字
-(void)ygCATextLayer
{
CATextLayer * ygTextLayer = [CATextLayer layer];
ygTextLayer.frame = CGRectMake(20, 64+100, 300, 35);
ygTextLayer.backgroundColor = [UIColor yellowColor].CGColor;
ygTextLayer.string = @"【code_小馬】的CATextLayer";
//字體的名字
ygTextLayer.font = (__bridge CFTypeRef _Nullable)(@"HiraKakuProN-W3");
//字體的大小
ygTextLayer.fontSize = 18.f;
//字體的對(duì)齊方式
ygTextLayer.alignmentMode = kCAAlignmentCenter;
//字體的顏色
[self.view.layer addSublayer:ygTextLayer];
ygTextLayer.foregroundColor =
[UIColor redColor].CGColor;
// 最主要的特點(diǎn)是CATextLayer可以被NSMutableAttributedString直接附值。
//而NSMutableAttributedString有可以最自己內(nèi)容作出顏色以及大小的調(diào)整。
}
//漸變色文字
-(void)ygCAGradientLayer
{
UILabel * yg_label = [[UILabel alloc]init];
yg_label.frame = CGRectMake(20, 160, 300, 30);
yg_label.text = @"【code_小馬】的CAGradientLayer";
yg_label.font = [UIFont systemFontOfSize:18.0];
[self.view addSubview:yg_label];
CAGradientLayer *yg_gradientLayer = [CAGradientLayer layer];
NSInteger count = 20;
NSMutableArray *colors = [NSMutableArray array];
NSMutableArray *locations = [NSMutableArray array];
for (NSInteger i = 0; i < count ; i ++) {
UIColor *color = [UIColor colorWithRed:arc4random_uniform(255)/255.0 green:arc4random_uniform(255)/255.0 blue:arc4random_uniform(255)/255.0 alpha:1];
[colors addObject:(__bridge id)color.CGColor];
[locations addObject:@(i /(CGFloat)count)];
}
//顏色數(shù)組
yg_gradientLayer.colors = colors;
//可以不設(shè)置
yg_gradientLayer.locations = locations;
//startPoint endPoint 確定條紋方向 不設(shè)置 默認(rèn)水平默認(rèn)值[.5,0]和[.5,1]
yg_gradientLayer.startPoint = CGPointMake(0, 0);
yg_gradientLayer.endPoint = CGPointMake(1, 1);
yg_gradientLayer.type = kCAGradientLayerAxial;
yg_gradientLayer.bounds = CGRectMake(0, 0, 400, 400);
yg_gradientLayer.position = CGPointMake(200, 340);
//用label的layer裁剪gradientLayer
yg_gradientLayer.mask = yg_label.layer;
[self.view.layer addSublayer:yg_gradientLayer];
}
//漸變色的線
-(void)ygLineLayer
{
CAGradientLayer *yg_gradientLayer = [CAGradientLayer layer];
NSInteger count = 20;
NSMutableArray *colors = [NSMutableArray array];
NSMutableArray *locations = [NSMutableArray array];
for (NSInteger i = 0; i < count ; i ++) {
UIColor *color = [UIColor colorWithRed:arc4random_uniform(255)/255.0 green:arc4random_uniform(255)/255.0 blue:arc4random_uniform(255)/255.0 alpha:1];
[colors addObject:(__bridge id)color.CGColor];
[locations addObject:@(i /(CGFloat)count)];
}
//顏色數(shù)組
yg_gradientLayer.colors = colors;
//可以不設(shè)置
yg_gradientLayer.locations = locations;
//startPoint endPoint 確定條紋方向 不設(shè)置 默認(rèn)水平默認(rèn)值[.5,0]和[.5,1]
yg_gradientLayer.startPoint = CGPointMake(0, 0);
yg_gradientLayer.endPoint = CGPointMake(1, 1);
//這一句是廢話——>因?yàn)椋簍ype默認(rèn)值是kCAGradientLayerAxial,表示按像素均勻變化。除了默認(rèn)值也無其它選項(xiàng)。
yg_gradientLayer.type = kCAGradientLayerAxial;
yg_gradientLayer.frame = CGRectMake(0, 360, [UIScreen mainScreen].bounds.size.width , 50);
[self.view.layer addSublayer:yg_gradientLayer];
}
/*
* Layer.mask屬性用法
* mask (繼承與CALayer)
*/
//用label的layer裁剪gradientLayer
yg_gradientLayer.mask = yg_label.layer;
[greenLayer addSublayer: whiteLayer];
[greenLayer addSublayer: blueLayer];
[greenLayer addSubLayer: purpleLayer]
greenLayer.mask = purpleLayer;

[greenLayer addSublayer: whiteLayer];
[greenLayer addSublayer: blueLayer];

[greenLayer addSubLayer: purpleLayer]

greenLayer.mask = purpleLayer;
【code_小馬】

美文分享
晌午時(shí)光
【第十三集】
不就帶了兩個(gè)馬子嘛!干嗎那么緊張!”濱仔不屑地說?! 澳闵倭_嗦!”Linda匆忙跑遠(yuǎn)?! 斑@就是傳說中的東歌??!哇塞!我沒想到真的能進(jìn)來!阿瞳!你看耶!那人穿了三個(gè)鼻環(huán)!”胖妹興奮得大呼小叫的,未顯示出太多的詫異,她觀察著人們對(duì)如風(fēng)恭敬的態(tài)度,心中默默盤算。 “我還要一份翅皇羹!”胖妹拿著menu,她已經(jīng)點(diǎn)了很多?! 啊〖t莓之戀’,一份乳酪蛋糕,謝謝?!卑⑼珜?duì)侍者說“小紅莓之戀’,拿破侖餅?!比顼L(fēng)目光一直放在阿瞳身上?! “⑼⑽⒁恍Γ骸翱床怀鰜恚憔谷幌矚g吃甜食!” 如風(fēng)不自然的低下頭,他點(diǎn)了一支煙,把煙盒擺在了左邊,與打火機(jī)形成了個(gè)十字?! “⑼沉艘谎郏攘丝陲嬃??! 跋娜绠嬍悄闩褑幔俊迸置靡贿叴蟪砸贿呎f,“她好靚啊!” “不是,”如風(fēng)面色一變,他長吐了一口煙圈,有些落寞的說:“她是我姐姐?!薄 巴郏∈墙憬?,你們長得不像啊。不過都是俊男靚女!”胖妹說?! ∪顼L(fēng)臉色更加難看?! 安皇前伞!卑⑼蝗婚_口?! ∷⒅顼L(fēng)的眼睛說:“你們不是親姐弟吧?!薄 ∨置皿@訝的望著阿瞳,阿瞳臉上浮現(xiàn)出狡黠的笑容?! ∪顼L(fēng)目光中露出一絲寒氣,他突然拔出槍抵住阿瞳的額頭。 “說,你是到底是誰!” 胖女孩塞滿食物的嘴大大的張開,她不可思議的望著如風(fēng),沒敢叫出聲音?! “⑼樕n白,她深吸了一口氣說:)“你不用一再的試探我了。我不知道你把我當(dāng)成了什么人,但我絕對(duì)不是他們中的一員!我,蘇瞳,只是惠仁中學(xué)2年3班的一名學(xué)生而已!” 阿瞳從書包里掏出學(xué)生證遞到如風(fēng)面前?! ∪顼L(fēng)看著證件上那張燦爛的笑臉微微一愣,他收起槍說:“對(duì)不起,你們隨意玩吧。” 如風(fēng)走了出去。 胖妹咽下口中的食物,使勁拍著胸口說:“他,他剛才拿的是槍吧????是真的槍吧?” 阿瞳的腿微微發(fā)顫,她舉起“小紅莓之戀”一飲而盡,自言自語:“他們比我想的還要復(fù)雜啊……” 如風(fēng)一出門便迎來了程秀秀?! 霸趺矗€是放棄你‘姐姐’了嗎?!”程秀秀冷笑著說,“那兩個(gè)女孩,比較喜歡哪一個(gè)呢?” “最近不太平,有人在暗暗動(dòng)手腳,”如風(fēng)說,“她們跟她接觸,我怕她出事?!薄 〕绦阈闼闪丝跉?,又酸酸的說:“就那么在乎她嗎?” 如風(fēng)沒有回答,他頓了頓說:“秀秀,算了吧?!薄 拔也?!”程秀秀望著如風(fēng)的背影狠狠的甩頭而去?! 跋耐瑢W(xué)!”在圖書館,一個(gè)文質(zhì)彬彬的男孩笑著喊我?! 笆裁词??”我望著這張陌生而英俊的臉有些緊張的說?! ∫呀?jīng)很久很久,除了如風(fēng),沒有人跟我說過話了?! ∷眠^我手里借的書,說:“肖伯納?你也喜歡戲劇嗎?” “還好?!彼匀坏膽B(tài)度仿佛我們是故交,這讓我略略放松。.........
點(diǎn)擊閱讀文章第十四集
文章后續(xù)更新中,喜歡請關(guān)注哦 ??????