Cocoa China 苹果开发中文站

苹果Mac OS X开发 iPhone开发 Cocoa以及Cocoa Touch

推荐使用Safari浏览器阅读本站

Core Graphics

Cocoa矢量图程序开发包

GCDrawKit是一款非常强大的矢量图程序开发包,有了它的帮助,你可以轻松用Cocoa开发出类似Illustrator或者Freehand这种矢量工具,当然,处理简单的图形工作也不在话下。

点击这里阅读全文 »

如何制作Core Image滤镜插件

Core Image提供了很多滤镜,这里介绍自己开发Core Image滤镜的方法,相信会对一些朋友有用。

 

本文通过一个例子从头至尾介绍了如何开发一个将彩色图片转换为灰度图片的滤镜,并介绍了滤镜的使用方法。

点击这里阅读全文 »

格式转换:如何将CGPDFPageRef转换为CGImageRef

以下Carbon代码可以将PDF页面CGPDFPageRef转换为Quartz的CGImageRef格式,这样就可以将PDF页面用在Core Animation中了。

点击这里阅读全文 »

介绍一下如何设置CGColor颜色值

再明确一下,本站的文章基本不是翻译的就是自己人写的(younker兄现在有四篇,还转了superzhou兄一篇,dr_watson大大那篇待转中),转载的文章屈指可数。翻译的和转载的文章上面都标注来源了,本站不转载别人翻译成中文的文章(虽然本人翻译水平比较烂)。所以如果你想转载本站的文章,不管是本站翻译的还是本站独有的内容,拜托写一下转载自Cocoachina好吗,囧rz……(小弟一不是高手二不靠写程序吃饭,建个Cocoa站主要就是为了给大家带点新鲜玩意,囧)

另外发现有朋友说本站更新好勤,哈哈。小弟在此拜托各位大侠给点动力记得天天来哈,能给做个链接更好,让更多的人看到就更开心了。:D

之前发了一篇关于如何在iPhone中使用渐变的文章,忽然想起来本站并没有相关介绍颜色的文章。这里简单介绍一下如何取CGColor的颜色值,最好你对色彩的构成有一点基础,如果会用Photoshop就更好了,因为本文内容中会掺杂有一点Photoshop的知识。这篇文章的内容同时支持Mac与iPhone。

点击这里阅读全文 »

在iPhone中实现渐变效果

在本站之前的文章:《Leopard轻松编程-帮你节省代码》中介绍过,Leopard增加了一个新的NSGradient类,可以用于实现渐变效果。但是很不幸,iPhone SDK中并没有提供这个NSGradient类。那么如何在iPhone中实现渐变呢?本文将帮你解决这个问题。

点击这里阅读全文 »

Core Animation教学:关键桢动画

Leopard中最新的Core Animation技术可以让开发者简单地开发超酷的用户界面。想想iPhone为什么这么受欢迎,因为它革命性的用户界面和用户体验,可以让人爱不释手。在本站之前的文章里,我们介绍过一些关于Core Animation开发方面的文章,但是从来没有介绍过关于关键桢动画方面的内容。

本文通过一个例子讲解Core Animation关键桢动画方面的基本知识,例子很清晰易懂。建议您有一定Cocoa知识以及掌握初步的Core Animation概念,那么通过本文您会了解更多关于Core Animation的知识。

点击这里阅读全文 »

如何用Cocoa通过CGrafPtr画图

苹果的一些插件API,如Webkit插件、iTunes可视化插件(SDK)等,提供的图形上下文指针都是CGrafPtr这种类型。那么如果想用Cocoa在其中画图,可以参考如下代码:

  //destPort CGrafPtr

CGContextRef cgContext;

OSStatus err = QDBeginCGContext(destPort, &cgContext);

if(err == noErr)

{

[NSGraphicsContext saveGraphicsState];


[NSGraphicsContext setCurrentContext: [NSGraphicsContext  

  graphicsContextWithGraphicsPort: cgContext flipped: NO];

 

/* 在这里就可以画了 */

 

[NSGraphicsContext restoreGraphicsState];

 

QDEndCGContext(destPort, &cgContext);

}

 

 

Quartz Composer完全入门(1)

感谢Kengo Tsuruzono的Quartz Composer系列教学,本站将其翻译为中文奉献给国内的读者。

主题

 

本次的主题介绍Mac OS X 10.4以上版本增加了Quartz Composer。

 

确认您的开发环境

 

  • Mac OS X 10.4.1以上版本
  • Quartz Composer 2.0以上版本
  • 要播放本页包含的动画,需要Mac OS X 10.4及以上版本,Quicktime 7.0以上版本。

概要

 

  • Quartz Composer概要说明。
  • 从Image Importer读入图片。
  • Billboard图片显示。
  • 基于LFO的基本动画显示。
  • 基于Particle粒子系统的粒子动画显示。
  • 基于Layer层的图片前后关系变更。
  • 基于Clear的背景填充。
  • 基于Gragient的背景渐变。
  • 基于Sprite的3D坐标图像显示。
  • 坐标系说明。
  • 粒子系统的应用例子。
  • 参考(LFO、粒子系统、Clear、Gradient)。

 

 

点击这里阅读全文 »

如何在Cocoa中使用CGContext

 

你可以在Cocoa View中使用Core Graphics函数,只需要传递当前图形端口:
 
#define cgrect(nsrect) (*(CGRect *)&(nsrect))
- (void) drawRect: (NSRect) rect
{
    NSRect bounds = [self bounds];
        
    NSGraphicsContext *cocoaContext = [NSGraphicsContext currentContext];
    CGContextRef context = (CGContextRef)[cocoaContext graphicsPort];
        
    CGContextSetLineWidth (context, 5.0);
        
    CGContextBeginPath(context); {
        CGContextAddRect (context, cgrect(bounds));
        CGContextSetRGBFillColor (context, 1.0, 0.9, 0.8, 1.0);
    } CGContextFillPath(context);
        
} // drawRect

Core Animation教学:Dashboard特效

 

 

作者:Matt Long

 

在我们尝试演示Core Animation通过不同方式用法的时候,我们注意到,试着重现你在OS X本身看到的一些特效也是一种挑战。上一篇文章中我们讲解了如何制作窗口震动特效,这次,我们准备演示一些Dashboard的特效。

点击这里阅读全文 »

Core Animation:用最少代码画出照片倒影效果

 

iTunes的CoverFlow照片倒影效果很酷,因为它使一幅简单的照片在界面上看起来很真实。

那么如何用Core Animation的CALayer做出这种效果,以便增加动画的处理,这就是下文要研究的课题。

在这个例子里,我们做了三个CALayer,分别叫做imgLayer,用于显示图片;reflectionLayer,用于显示倒影和shadowLayer,做为倒影的遮罩。这个例子假设您会使用Photoshop进行简单的图片处理。

 

 

点击这里阅读全文 »

最新讨论