在Mac OS X上画一个正方形?

时间:2011-06-30 20:41:02

标签: objective-c cocoa macos

我想绘制一个4x4像素的小方块。我希望能够在运行时调整其颜色(不像颜色井或任何东西,用户不需要)。我一直用NSImage来做这件事,但是这耗费了大量的资源而我无法调整,并且在Photoshop中制作一个不同的小色样来将其更改为任何新颜色是一个巨大的痛苦,所以它不再合适。如何在Mac OS X上完成?

3 个答案:

答案 0 :(得分:10)

在Mac OS X上以坐标0,0(左下角)绘制4x4方块的最简单方法:

NSRectFill(NSMakeRect(0.0, 0.0, 4.0, 4.0));

设置用于此类绘图的颜色的最简单方法:

[[NSColor colorWithCalibratedRed:... green:... blue:... alpha:1.0] set];

答案 1 :(得分:3)

像这样的东西。我没有编译它,但这是使用Quartz在Mac上绘制任意形状的基本方法:

- (void)drawRect:(NSRect)rect {
   [[NSColor redColor] set];
   CGPathRef path = CGPathCreateMutable();
   CGPathAddRect(path, NULL, CGRectMake(0, 0, 4, 4));
   CGContextStrokePath([NSGraphicsContext currentContext], path);
   CGPathRelease(path);
}

答案 2 :(得分:3)

[[NSColor redColor] set];
[NSBezierPath fillRect:NSMakeRect(0,0,4,4)];