- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我想用HardLight合成操作来绘制图像。我已经用下一个绘制代码创建了 NSImageView:
- (void)drawRect:(NSRect)dirtyRect {
//[super drawRect:dirtyRect];
if (self.image != NULL) {
[self.image drawInRect:self.bounds fromRect:NSZeroRect operation:NSCompositeHardLight fraction:1.0];
}
}
通常情况下效果很好。但它不适用于 NSVisualEffectView。
如何在 NSVisualEffectView 上混合 HardLight?
在下面链接的图像中,您可以看到圆角矩形,它将 HardLight 混合在窗口背景和彩色图像上。但在 NSVisualEffectView(红底矩形)上它只绘制灰色。
https://www.dropbox.com/s/bcpe6vdha6xfc5t/Screenshot%202015-03-27%2000.32.53.png?dl=0
最佳答案
粗略地说,图像合成不从源和目标获取任何像素、一个或两个像素,应用一些合成操作并将其写入目标。要获得考虑目标像素的效果,在发生合成操作时必须知道该像素的颜色信息,这在 -drawRect:
的实现中。
我假设您在这里谈论的是窗口混合(NSVisualEffectBlendingModeBehindWindow
)。 NSVisualEffectView 的问题是它不绘制任何东西。相反,它定义了一个区域,告诉 WindowServer 进程在该区域中执行其活跃的操作。这会在您的应用绘制 View 后发生。
因此,应用程序中的合成操作无法考虑窗口服务器稍后绘制的像素。简而言之,这是不可能的。
关于xcode - 在 NSVisualEffectView 上混合,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29290234/
在 OS X Yosemite 中,Apple 引入了一个新类 NSVisualEffectView .目前,这个类没有记录,但我们可以在 Interface Builder 中使用它。 我如何使用
如何在 NSVisualEffectView 上制作淡入/淡出动画。我用过 NSAnimationContext,但它没有动画就消失了。 NSAnimationContext.runAnimation
如何在 OS X 中显示带圆角的 NSVisualEffectView? 我添加 NSVisualEffectView 的代码: let visualEffectView = NSVisualEffe
我目前正在尝试更改 NSVisualEffectView 的色调。这是我到目前为止得到的: class MainViewViewController: NSViewController { o
我的应用程序有一个配置为 SourceList 的 NSTableView。在 NSTableView 下有两个 NSButton,两个在表中添加/删除项目。表格和按钮嵌入在 NSVisualEffe
我想用HardLight合成操作来绘制图像。我已经用下一个绘制代码创建了 NSImageView: - (void)drawRect:(NSRect)dirtyRect { //[super draw
当将 NSVisualEffectView 应用于 NSWindow(Swift 或 Objective-C)时,是否可以调整它的模糊半径和透明度?我尝试了 NSVisualEffectMateria
我正在开发一个使用 NSVisualEffectView 实现透明度的 macOS 应用程序。我想实现类似于 iOS 的 Cover Sheet 小部件 View 的效果。请注意,当您向上滚动时,搜索
对于旧版本的 Swift/Xcode 似乎有很多问题,但由于某种原因它不能与最新更新一起使用。我创建了一个 NSVisualEffectView、blurryView,并将 subview 添加到我的
当应用于 NSWindow(Swift 或 Objective-C)时,是否可以调整 NSVisualEffectView 的模糊半径和透明度?我尝试了 NSVisualEffectMaterial
如何修复 NSOutlineView 上看起来很糟糕的文本,并且后面有一个深色的 NSVisualEffectView? 避免子类化的奖励积分! 最佳答案 我对 NSTextField 也有类似的问题
我有一个 NSVisualEffectView,它充满活力,包含文本字段(NSTextField 或 NSComboBox)和无边框按钮。这些按钮位于文本字段上方,我想禁用无边框按钮的活力效果,因为它
我有一个较旧的应用程序,它具有基于 NSCell 的 NSTableView 的特定外观,具有源列表突出显示。不幸的是,在 Yosemite 上,这会在所选单元格下添加 NSVisualEffectV
我想在 NSTextView 中添加一个 NSVisualEffectView,但是当我添加它时,文本位于 NSVisualEffectView 下方,那么,如何在文本下方添加 NSVisualEff
我想使用具有深色活力的 NSVisualEffectView,但我发现在某些情况下效果太苍白,所以我想使背景变暗。 这是一个示例应用程序,使用 NSBox View 提供较暗的背景。 我们可以看到 N
我正在尝试让我的 NSScrollView(以及包含的 NSOutlineView)使用具有窗后混合效果的模糊 NSVisualEffectView . 我已成功将 NSVisualEffectVie
我在 NSVisualEffectView 中使用自定义 NSTableRowView。我在 CustomTableRowView 中实现了自定义 lightlight 样式,如下所示: class
即将推出的 OSX 10.10(“Yosemite”)提供了一种新型 View ,即 NSVisualEffectView,它支持通过窗口或窗口内的半透明。我最感兴趣的是通过窗口半透明,所以我将在这个
我正在通过将 NSStackView 放入 NSScroller 中以编程方式构建 NSView 层次结构。我之前已经这样做过并且我的代码是正确的。 View 层次结构是我所期望的,直到第一次通过运行
我在 NSPopover 中的 NSVisualEffectView 中有一个 NSCollectionView。每次刷新时(添加、删除、重新加载 NSCollectionViewItem,甚至只是单
我是一名优秀的程序员,十分优秀!