【问题标题】:Zooming in on CIImage or NSImage?放大 CIImage 或 NSImage?
【发布时间】:2010-07-06 03:34:18
【问题描述】:

我正在 Cocoa 应用程序中从网络摄像头拍摄照片,我想放大我收到的图像的中心。我首先收到一个CIImage,最后保存一个NSImage

我将如何放大这些对象中的任何一个?

【问题讨论】:

    标签: cocoa nsimage


    【解决方案1】:

    “缩放”意味着几件事。您至少需要裁剪图像,并且可能想要放大。或者您可能只想保留缩放以供显示。

    CGImage

    要裁剪它,请使用 CICrop 过滤器。

    要对其进行缩放,请使用 CILanczosScaleTransform 过滤器或 CIAffineTransform 过滤器。

    要裁剪和缩放它,请同时使用这两个过滤器。只需将作物的输出作为比例的输入。

    NSImage

    裁剪和缩放在这里是相同的操作。您需要创建一个所需大小的新的空 NSImage (如果您不缩放,它是源裁剪的大小,或者如果您要缩放则增加大小),锁定焦点,绘制裁剪矩形将源图像放入目标图像的边界矩形,并解锁焦点。

    如果目标矩形与源(裁剪)矩形的大小不同,它将缩放;如果它们的大小相同,它将简单地复制或合成像素到像素。

    【讨论】:

      猜你喜欢
      • 2010-11-27
      • 2011-09-01
      • 1970-01-01
      • 1970-01-01
      • 2014-07-14
      • 1970-01-01
      • 1970-01-01
      • 2019-05-19
      • 2012-09-23
      相关资源
      最近更新 更多