假设我有一个100x100的NSImage。我也有一个50x50的NSImageView。有没有一种方法可以将NSImage放置在NSImageView内部的坐标处,从而可以控制显示的哪一部分?看来NSImage没有initWithFrame方法...

最佳答案

正如安德鲁建议的那样,我在NSImageView子类中进行了此操作。

- (void)drawRect:(NSRect)rect
{
    [super drawRect:rect];
    NSRect cropRect = NSMakeRect(x, y, w, h);
    [image drawAtPoint:NSZeroPoint
              fromRect:cropRect
             operation:NSCompositeCopy
              fraction:1];
}

关于objective-c - 如何以编程方式将较大的NSImage放置在较小的NSImageView中?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/1694684/

10-09 16:16