d11*_*wtq 5 macos cocoa objective-c nsimage
如果我对阴暗图像的确切色调等不是很挑剔,是否有一种快速而肮脏的方式来绘制一个稍微暗淡的NSImage,就像这样?我在网上搜索过,无法真正找到我想要的东西(但在理解图形和正确的技术术语方面我不是很好).
我实际上调整了与上面的Xcode调光图标相同的用例的图标(即文档有未保存的更改).
Reg*_*ent 16
这对我来说很好:
NSImage *iconImage = [NSImage imageNamed:@"Icon"];
NSSize iconSize = [iconImage size];
NSRect iconRect = NSMakeRect(0.0, 0.0, iconSize.width, iconSize.height);
[iconImage lockFocus];
[[NSColor colorWithCalibratedWhite:0.0 alpha:0.33] set];
NSRectFillUsingOperation(iconRect, NSCompositeSourceAtop);
[iconImage unlockFocus];
[iconImage drawInRect:iconRect
fromRect:iconRect
operation:NSCompositeSourceOver
fraction:0.75];
Run Code Online (Sandbox Code Playgroud)
基本上我是在实际图标的顶部添加一个33%不透明度的黑色图层(用它掩盖NSCompositeSourceAtop
).然后我只是绘制了不透明度为75%的暗淡图标.
[编辑:根据Nikolai Ruhe的建议,使用NSRectFillUsingOperation(...)摆脱临时黑色图像]
归档时间: |
|
查看次数: |
3648 次 |
最近记录: |