【问题标题】:Create an image cropping interface for Objective C (Mac OS X)为 Objective C (Mac OS X) 创建一个图像裁剪界面
【发布时间】:2013-09-07 00:32:42
【问题描述】:
我需要为 OS X 可可应用程序创建一个非常简单的图像裁剪界面,但我不知道从哪里开始。用户需要能够从预设菜单中选择裁剪大小,呈现一个裁剪矩形,该矩形可以在保持比例的情况下调整大小,并在图像周围移动,直到他们最终将所选裁剪应用于图像。
我已经搜索了一些示例代码和项目,但没有发现任何有用的东西。 Core Image fun house 有一些指针,但它是一个已退役的样本。有很多 iOS 示例,但我没有找到一个易于遵循的 Mac OS 示例。
谁能指出我正确的方向(或示例项目或框架!!)。
非常感谢。
【问题讨论】:
标签:
objective-c
macos
core-image
【解决方案1】:
这是一个你可以看看的项目:
https://github.com/foundry/drawingtest
这是我在尝试理解此方法中矩形之间的关系时制作的一个小演示:
- (void)drawInRect:(NSRect)dstRect
fromRect:(NSRect)srcRect
operation:(NSCompositingOperation)op
fraction:(CGFloat)delta
请注意,旧的 compositeToPoint: 方法已被弃用,不应用于此类事情。
srcRect 是您想要保留的原始图像部分(在它自己的坐标中)。
dstRect 是您希望该裁剪区域绘制到的矩形。
项目中的JMRect 是 NSRect 的 NSObject 表示 - 这样我们就可以使用可可绑定将界面控件绑定在一起。
对于您的 UI,裁剪矩形可能只是一个带有边框的透明子视图视图,您可以四处推动并在要裁剪的图像上调整大小。
这绝不是您问题的完整解决方案,但您可以随意使用它 - 它可能会帮助您入门。
【讨论】:
-
-
这个答案和裁剪工具 SCSelectionBorder here 让我前进。谢谢。