gpt4 book ai didi

objective-c - 添加图像边框

转载 作者:行者123 更新时间:2023-12-03 17:04:42 25 4
gpt4 key购买 nike

好的,这就是我正在尝试做的:

  • 获取一个 NSImage,其中包含一张照片(1000+ x 1000+ 尺寸)。
  • 获取另一个仅包含透明背景和简单黑色边框 (500x500) 的 NSImage
  • “合并”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] 是包含照片的 ImageWell,[self drop2] 是包含边框的 ImageWell。

问题是它正在发挥作用。然而,结果图像 - 非常明显 - 显示出有点“拉伸(stretch)”的边框。

Image with Border

我该如何解决这个问题?鉴于原始照片应该具有任何尺寸,我怎样才能使其使用边框(某些固定尺寸)并且仍然避免拉伸(stretch)?

最佳答案

直接用CALayer做边框怎么样,例如:

#import <QuartzCore/QuartzCore.h>

CALayer *layer = imageView.layer;
layer.borderColor = [[NSColor blackColor] CGColor];
layer.borderWidth = 10;

关于objective-c - 添加图像边框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13196824/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com