NSImage vs. CIImage vs. CGImage?

2024-01-11

我应该什么时候使用它们?


NSImage 是一种抽象数据类型,可以表示许多不同类型的图像,以及图像的多种表示形式。当图像的实际类型对于您想要执行的操作并不重要时,它通常很有用。它也是 AppKit 在其 API(NSImageView 等)中接受的唯一图像类。

CGImage只能表示位图。如果您需要深入了解实际的位图数据,CGImage 是一个合适的类型。 CoreGraphics 中的操作,例如混合模式和遮罩,需要 CGImageRefs。 CGImageRefs 可用于创建 NSBitmapImageRefs,然后将其添加到 NSImage 中。

我认为文档对 CIImage 的描述最好:

尽管 CIImage 对象具有与其关联的图像数据,但它不是图像。您可以将 CIImage 对象视为图像“食谱”。 CIImage 对象拥有生成图像所需的所有信息,但 Core Image 在被告知之前不会实际渲染图像。这种“惰性评估”方法使 Core Image 能够尽可能高效地运行。

CIImages 是使用 Mac OS X 附带的各种 GPU 优化的 Core Image 滤镜所需的类型,但与 CGImageRefs 一样,它们也可以转换为 NSBitmapImageReps。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

NSImage vs. CIImage vs. CGImage? 的相关文章

  • 在 UICollectionView 下面插入子视图

    当我在 UICollectionView 下方添加子视图时 有时子视图会显示在 UICollectionView 单元格上方 这是子视图插入代码 self collectionView insertSubview self garmentV
  • 每个 CPU 核心处于 C0 电源状态的时间

    任何帮助弄清楚如何做到这一点都会很棒 在过去一秒内 每个 CPU 核心处于 C0 电源状态的时间有多少 这是针对 Mac 应用程序的 因此需要 Objective C cocoa 和 c OS X 没有任何公开 CPU c 状态的 API
  • 如何使用 jquery imgAreaSelect 用 php 裁剪图像?

    我正在使用以下 javascript 代码来实例化 jquery图像区域选择 http odyniec net projects imgareaselect 裁剪我的图像 document ready function ladybug im
  • 如何从 Xcode 4 中的实体创建用户界面?

    我已经用核心数据进行了几天的实验 并且在过去的几个小时里尝试找出如何从 xcode 4 中的实体创建 UI 根据我一直在阅读的书籍 您必须选择将核心数据实体拖到界面生成器中的窗口中 但是当我在 xcode 4 中执行此操作时 没有任何反应
  • 仅获取图像中的外部轮廓

    我有这段代码 可以在图像中绘制轮廓 但我只需要外部轮廓 import cv2 import numpy as np camino C Users Usuario Documents Deteccion de Objetos 123 jpg
  • 小视频播放

    根据我从互联网收集的信息 MPMoviePlayerController 类不支持小视频播放 因此 为了死马当活马医 我想知道可以使用什么样的方法来让小视频在屏幕的一角播放 而不中断屏幕的其余部分 到目前为止 我们已经遇到了两种可行的解决方
  • 在后台每 X 分钟执行一次函数不起作用

    我使用此代码每 X 分钟执行一次函数 void executeEveryOneMinute self myFunction dispatch after dispatch time DISPATCH TIME NOW int64 t 60
  • 使用 iPhone 控制蓝牙音频设备

    我正在寻找为 iPhone 编写应用程序 它将能够控制汽车中的收音机和 CD 播放器 收音机和播放器具有可用的蓝牙连接 我开始这个问题是为了获得这个地方所需的所有信息 我有几个问题 但如果您发现任何我没有要求的对我开始开发此应用程序不重要的
  • Objective-C 使用字符串池吗?

    我知道Java https stackoverflow com questions 3801343 what is string pool in java and C http msdn microsoft com en us librar
  • 如何生成Mac应用程序的安装包?

    如何为 OS X 二进制文件以及一些配置和脚本文件创建单个安装程序包 最终文件夹应如下所示 任何帮助 将不胜感激 谢谢 如果您希望将各种东西放置在不同的位置 安装程序在这里 文档在那里 支持文件在这里等等 它们也非常适合提供安装体验的可配置
  • 如何从 DTrace 脚本打印 NSString

    This question https stackoverflow com questions 1413623 how do i print a cfstringref in a dtrace action正在问同样的事情 但是当我尝试时
  • 如何使网页中出现的图标闪烁/闪烁

    几天前我开始研究高级java 我知道太晚了 我被困在使图标 出现在任务栏上 闪烁的特定任务上 这种闪烁应该根据特定条件发生 这意味着可以使用以下方法来实现javascript 我已经搜索了一段时间了 但是有没有办法让图标每隔 1 秒左右出现
  • 如何用Block简化回调逻辑?

    假设我需要与一个提供协议的类进行通信 并在操作完成时调用委托方法 如下所示 protocol SomeObjectDelegate required void stuffDone id anObject void stuffFailed e
  • NSOperation 中委托的使用

    我正在尝试利用CLLocationManager in an NSOperation 作为其中的一部分 我需要能够startUpdatingLocation然后等到收到 CLLocation 后才完成操作 目前我已经完成了以下操作 但是委托
  • 如何从日期中获取小时、分钟和上午/下午? [复制]

    这个问题在这里已经有答案了 我尝试从日期中提取小时 分钟和上午 下午 但我得到 NULL 输出 我在下面显示了我的代码 请查看 NSString dateStr 29 07 2013 02 00am NSDateFormatter form
  • 使用 UIKeyCommand 检测删除键

    任何人都知道如何使用检测 删除 键UIKeyCommand在 iOS 7 上 当人们在使用 Swift 时遇到问题时 我认为用 Objective C 和 Swift 编写一个小型的 完整的例子可能是一个很好的答案 请注意 Swift 没有
  • 如何修复 ReactiveCocoa(带有 CocoaPods)的安装?

    这里是新手 尝试将 ReactiveCocoa 2 2 4 和 CocoaPods 安装到项目中 但在运行时遇到错误 我用过github 上的这个 podspec https github com CocoaPods Specs blob
  • ios 11 - UIBarButtonItem 内的 UIButton 导致自动布局错误

    我在将 UIButton 添加到 UIBarButtonItem 时遇到了一个已知问题 我尝试按照建议添加自动布局约束堆栈溢出 https stackoverflow com a 46336639 505603但我收到如下所述的错误 UIB
  • 由于 2.23 导致 iOS 应用程序被拒绝 - iOS 数据存储指南

    以下是 Apple 关于拒绝的消息 2 23 应用程序必须遵循 iOS 数据存储指南 否则将被拒绝 2 23 详情 在启动和内容下载时 您的应用程序会存储 6 5 MB 这并不意味着 遵守 iOS 数据存储指南 下一步 请验证只有用户使用您
  • Objective C (iphone) 关于发布的问题

    如果我创建一个视图 并将其添加为子视图并将其添加到数组中 是否必须释放它两次 UIView cat UIView alloc initWithFrame someFrame self view addSubview cat self ani

随机推荐

  • Android Wear 设备选择框显示“offline localhost:4444 minSdk (API 20) > deviceSdk (API 1)”

    我正在尝试构建 Android Wear 应用程序 如果我将 minsdk 设置为 20 21 它给出了下面的错误 但如果我将其设置为 19 则会出现以下错误 home bhupinder AndroidStudioProjects MyW
  • 如何通过每种颜色的分数贡献在 n 种颜色之间进行插值?

    我怎样才能在n种颜色之间进行插值 2种颜色的简单情况 首先考虑一个更简单的情况 我们想要找到两种颜色的中点 Color1 is RGB 255 0 0 Red Color2 is RGB 128 128 128 Grey 解决方案是单独考虑
  • 如何向用户实施有限的功能推出(与语言无关)?

    我想知道向选定的用户群推出新网站功能的一些常见或最佳实践 例如 用户可以仅基于总体用户群的百分比 10 部署应该是可定制的 可配置的 并支持任意数量的功能 将部署与特定用户角色或权限 ACL 相关联也很有用 那么 从本质上讲 什么是能够很好
  • @font-face 不起作用

    我下载了一个字体inlove light wf ttf 为了使用该规则 font face 我的文件夹中有 home html and inlove light wf ttf 在我的 CSS 中我有 font face font famil
  • 如何测试“Mosquitto”服务器?

    我是新来的Mosquitto and MQTT 我下载了Mosquitto服务器库 但我不知道如何测试它 有什么办法可以测试一下Mosquitto server 在单独的终端窗口中执行以下操作 启动代理 mosquitto 启动命令行订阅者
  • 我可以将实体字段名称映射到 TypeORM 中的别名列名称吗?

    我正在使用 TypeORM 从 Rails 迁移到 NestJs 由于历史原因 Rails 中的表名和列名是snaked cased 我不想将这种麻烦复制到我们的 NestJs React 端 我可以在 NestJS typeorm 中创建
  • 使用新范围更新 Google 工作表“过滤器视图”

    我有一个电子表格 其中设置了各种过滤器视图 通常这很有效 但偶尔会添加新行 我必须手动更新每个过滤器视图中的范围 我尝试在线搜索解决方案 并提出了以下可能更新范围的代码 function UpdateFilterView var dataS
  • xcode4 工作区中的两个项目(#import 失败)

    我真的很难让它在 xcode 4 中工作 我有一个项目将在许多应用程序 网络 中重用 因此我创建一个工作区并添加我的两个项目 到目前为止 一切都很好 这就是失败的地方 import JSONRequest h 没有明显的原因 它自动完成头文
  • 在单个表列中存储多个位值

    我需要在数据库中存储某种一周中的日程安排 我可以在其中安排一周中的一天或多天的记录 假设它代表一个任务 我需要将其存储在一列中 以便于保存和检索 然后每天我都会选择时间表与本周的当前日期相匹配的记录 例如 获取时间表与第 7 周的日期相匹配
  • 内部矩阵尺寸必须一致

    我有一个矩阵A和一个向量x A是一个 50x30 矩阵 x是一个 1x30 向量 我想要倍增A by x 但每当我尝试z A x我收到错误Inner matrix dimensions must agree 然而 在列数相同的情况下 矩阵维
  • Elasticsearch Painless 计算嵌套元素的分数

    Note 我最初发布这个问题的方式有点不同 不值得更新 因为阅读后我学到了更多 要求 搜索文档并根据文档中的嵌套元素计算自定义分数 结构 mappings book properties title type string index no
  • 使用 gdb 中的函数调用堆栈进行导航

    在 Visual Studio 中 如果单击调用堆栈中的某个条目 则会打开编辑器并显示该函数的源代码 gdb 中可能有类似的东西吗 我在 gdb 中使用 tui 文本用户界面 是否可以让 tui 显示回溯中给定条目的源代码 如果没有 那么如
  • 如何在较新版本的 VS 中通过 UI 更改单元测试属性?

    几个月前 当我在使用 MSTest 进行单元测试时阅读有关数据源的内容时 我偶然发现了一些旧帖子 声称这只是进入属性并在 gui 上设置数据源的问题 这导致该属性与所需的参数一起自动添加到测试方法中 不过 我始终无法在属性网格上选择单元测试
  • 如何检查是否已为 VIRTUALENVWRAPPER_PYTHON=/usr/bin/python 等安装 virtualenvwrapper

    我正在遵循有关 Python 的 virtualenv 的指南 但遇到了一个小问题 Sahands MBP empty sahandzarrinkoub source usr local bin virtualenvwrapper sh u
  • 删除结构 C++ 向量中的重复项

    我有以下结构 我想将结构存储在向量中 其次我想删除 context 我究竟做错了什么 include
  • 编译器使用了错误的函数原型?

    我遇到了一个我不明白的编译问题 我将其简化了一些 以便在下面进行解释 基本上 它涉及到有 2 个不同的 getter 一个 const 和一个非常量 getter 它们返回一个带有 const 和非常量 value type 的容器 本例中
  • 通过命令行的Windows照片查看器 - 特殊功能[关闭]

    Closed 此问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 我想通过命令行执行在 Windows 7 和 Windows XP 下使用 Windows 照片查看器查
  • 使用 VBA 从工作簿中检索 OLEObjects 信息

    设想 我正在尝试使用 VBA 最初是 Python 但我找不到方法来执行此操作 读取所有信息或工作表 由于我必须读取的工作表具有不同的格式并且通常很混乱 因此我循环遍历工作表中的所有对象 获取它们的名称和值 检查或不检查 作为二进制文件 I
  • 为嵌套循环声明虚拟变量的更好方法是什么?

    方法 1 的优点是由于源代码中的文本字符较少 因此文件大小稍小 int i j for i 0 i lt numRows i for j 0 j lt numCols j
  • NSImage vs. CIImage vs. CGImage?

    我应该什么时候使用它们 NSImage 是一种抽象数据类型 可以表示许多不同类型的图像 以及图像的多种表示形式 当图像的实际类型对于您想要执行的操作并不重要时 它通常很有用 它也是 AppKit 在其 API NSImageView 等 中