作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
如何在 Objective-C 中绘制图像?我需要做的就是创建一个具有我设置的尺寸的图像,绘制几条 AA 线并将图像保存到 png 文件。我试图在苹果文档中找到它,但有 CGImage
、NSImage
、CIImage
等等。哪一个最容易实现我的目标?我只需要支持最新的 mac os x 版本,所以新东西不是问题。
最佳答案
可能最简单的方法是使用 NSImage
并在调用 lockFocus
后直接绘制到其中。
示例:
NSSize imageSize = NSMakeSize(512, 512);
NSImage *image = [[[NSImage alloc] initWithSize:imageSize] autorelease];
[image lockFocus];
//draw a line:
[NSBezierPath strokeLineFromPoint:NSMakePoint(100, 100) toPoint:NSMakePoint(200, 200)];
//...
NSBitmapImageRep *imageRep = [[[NSBitmapImageRep alloc] initWithFocusedViewRect:NSMakeRect(0, 0, imageSize.width, imageSize.height)] autorelease];
NSData *pngData = [imageRep representationUsingType:NSPNGFileType properties:nil];
[image unlockFocus];
[pngData writeToFile:@"/path/to/your/file.png" atomically:YES];
关于objective-c - 如何在 Objective-C 中绘制到文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8370595/
我是一名优秀的程序员,十分优秀!