gpt4 book ai didi

cocoa - 将 NSGradient 转换为 NSColor

转载 作者:行者123 更新时间:2023-12-03 17:12:52 27 4
gpt4 key购买 nike

是否可以将 NSGradient 转换为 NSColor

- (void) viewWillDraw {
NSGradient *grad = [[NSGradient alloc] initWithStartingColor:[NSColor lightGrayColor] endingColor:[NSColor darkGrayColor]];
[super setBackgroundColor:*gradient*;
}

这是我的方法,我希望能够将 NSGradient 作为 NSColor 传递,这显然我不能,有什么方法可以将其转换为 NSColor 吗?

最佳答案

在 10.8 上,您可以按以下顺序创建:

  1. 一个可以按照您喜欢的方式绘制渐变的 block 。
  2. An image that is backed by the block.
  3. A color that repeats the image as a pattern.

通过这种方式,您可以创建看起来像任何颜色的颜色,包括渐变。

也就是说,如果您尝试让渐变适应背景的大小(通过使用传递给 block 的矩形)并且背景是 ScrollView 中的 TextView ,则这可能无法在调整窗口大小时正常工作。 (当我不久前尝试过时,图案没有重新绘制 block ;它只是平铺,这至少在一个维度上看起来很奇怪。)如果你的渐变或窗口的大小是固定的,那么你就不会遇到这个问题.

关于cocoa - 将 NSGradient 转换为 NSColor,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16139065/

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