Да.Вот пример кода, который мы используем для этого.Он использует исходное изображение и немного забавен с масштабным коэффициентом, но вы должны быть в состоянии использовать базовую структуру и варианты компоновки, чтобы делать то, что вам нужно.(Этот код находится внутри блока [refleImage lockFocus], а self - это NSImage, отражение которого мы создаем.)
// Draw our mask into the image
NSGradient* fade = [[NSGradient alloc] initWithStartingColor:[NSColor colorWithCalibratedWhite:1.0 alpha:0.5]
endingColor:[NSColor clearColor]];
[fade drawFromPoint:NSMakePoint(0.0, size.height)
toPoint:NSMakePoint(0.0, 0.0)
options:0];
// Composite the original image, upside-down
NSAffineTransform* flipper = [NSAffineTransform transform];
[flipper scaleXBy:1.0 yBy:-1.0];
[flipper concat];
[self drawInRect:NSMakeRect(0.0, -1.0*size.height, size.width, size.height)
fromRect:NSMakeRect(0.0, 0.0, self.size.width, size.height / scaleFactor)
operation:NSCompositeSourceIn fraction:1.0];