好的,这就是我想要做的:
- 获取
NSImage
包含,假设是一张照片(1000+ x 1000+ 尺寸)。 - 获取另一个
NSImage
仅包含透明背景和简单黑色边框 (500x500) 的内容。 - “合并”这 2 张图像,这样生成的图像就是带有边框的照片。
这是我到目前为止所取得的成就:
NSImage* resultImage = [[[self drop] image] copy];
[resultImage lockFocus];
NSRect newRect = NSMakeRect(0, 0, [[[self drop] image] size].width, [[[self drop] image] size].height);
[[[self drop2] image] drawInRect:newRect
fromRect:NSZeroRect
operation:NSCompositeSourceOver
fraction:1.0];
[resultImage unlockFocus];
[[self drop] setImage:resultImage];
[self drop]
包含照片[self drop2]
的 ImageWell 和包含边框的 ImageWell在哪里。
问题是它正在工作。然而,生成的图像 - 很明显 - 显示出有点“拉伸”的边界。
我该如何解决?鉴于原始照片应该是任何尺寸,我怎样才能使它使用边框(某些固定尺寸)并且仍然避免拉伸?