注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

又一个部落格

换过很多备忘录,不知道这本怎么样!

 
 
 

日志

 
 

shadow  

2010-07-17 21:07:46|  分类: cocoa |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |
Shadows

shadow - happy dog - 又一个部落格
阴影的3个特征
x偏移
y偏移
模糊度

可以生成一个彩色的阴影

模糊度参数产生的不同效果
shadow - happy dog - 又一个部落格
 

 

 

普通的阴影
1 保存图形上下文状态
2 调用函数CGContextSetShadow, 传递模参数
3 执行所有的绘制您要申请的阴影。
4 还原图形状态


彩色的阴影
1 保存图形上下文状态
2 创建一个颜色空间
3 创建CGColor object 指定阴影的颜色
4 调用函数CGContextSetShadow, 传递模参数
5 Perform all the drawing to which you want to apply shadows.
6 还原图形状态



例子代码
下面程序是画一个普通阴影和一个彩色阴影
shadow - happy dog - 又一个部落格
void MyDrawWithShadows (CGContextRef myContext, // 1
                         float wd, float ht);
{
    CGSize          myShadowOffset = CGSizeMake (-15,  20);// 2
    float           myColorValues[] = {1, 0, 0, .6};// 3
    CGColorRef      myColor;// 4
    CGColorSpaceRef myColorSpace;// 5
 
    CGContextSaveGState(myContext);// 6
 
//普通阴影
    CGContextSetShadow (myContext, myShadowOffset, 5); // 7
     // 接下来画出我们想要的图形,自动的会生成对应的阴影// 8
    CGContextSetRGBFillColor (myContext, 0, 1, 0, 1);
    CGContextFillRect (myContext, CGRectMake (wd/3 + 75, ht/2 , wd/4, ht/4));
 
//彩色阴影
    myColorSpace = CGColorSpaceCreateDeviceRGB ();// 9
    myColor = CGColorCreate (myColorSpace, myColorValues);// 10
    CGContextSetShadowWithColor (myContext, myShadowOffset, 5, myColor);// 11
    // 接下来画出我们想要的图形,自动的会生成对应的阴影// 12
    CGContextSetRGBFillColor (myContext, 0, 0, 1, 1);
    CGContextFillRect (myContext, CGRectMake (wd/3-75,ht/2-100,wd/4,ht/4));
 
    CGColorRelease (myColor);// 13
    CGColorSpaceRelease (myColorSpace); // 14
 
    CGContextRestoreGState(myContext);// 15
}
  评论这张
 
阅读(901)| 评论(0)
推荐 转载

历史上的今天

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017