gpt4 book ai didi

cocoa + quartz 新手: Getting the color of pixels in an NSImage & drawing offscreen

转载 作者:行者123 更新时间:2023-12-03 18:02:20 25 4
gpt4 key购买 nike

我正在尝试为我的 Cocoa(Mac,而不是 iOS)应用程序创建自定义颜色选择器,但遇到了一些麻烦。我对计算机图形和绘图的各种模式非常熟悉,但我对 Cocoa 很陌生,我认为问题基本上是在其多层图形技术中迷失方向。

我想要实现的是一个颜色选择器,它停靠在一个更大的侧边栏 View 中,所以我认为最好自己绘制它,而不是使用标准的 float 面板。 (我有充分的理由;无需提及有关偏离 Apple HIG 的警告。)在研究检索 NSImage(在本例中为 colorWheel.PNG)上单击的像素颜色的最佳方法时,我发现它是最好的进入 Core Graphics 并将图像绘制到我自己的位图上下文中。

...这就是我所取得的成功。我已经成功创建了上下文,但我不确定从这里到哪里去,以及这是否太过分了。我想我正在寻找的是对这些类链接在一起的层次结构的可靠解释,以及如何最好地创建我正在寻找的效果。离屏绘图在此应用程序的许多部分都非常有用,我很想更好地理解它。

提前致谢。

最佳答案

快速解决方案:

无需将其绘制到屏幕外。
只需从 NSImage 创建一个 NSBitmapImageRep 即可。
并使用 colorAtX:y: 检索 NSColor。

当然,您只需要创建一次 NSBitmapImageRep。
然后每次用户单击或移动鼠标时查找颜色。
在我的应用程序中,这根本不会导致任何性能问题。

使用 NSView 显示 PNG 并检索坐标。

关于 cocoa + quartz 新手: Getting the color of pixels in an NSImage & drawing offscreen,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5054699/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com