用代码实现截屏并保存为图片

来源:互联网 发布:记事本软件的英文名 编辑:程序博客网 时间:2024/06/05 17:30
- (NSImage *)screenShot{    CFArrayRef windowsRef = CGWindowListCreate(kCGWindowListOptionOnScreenOnly, kCGNullWindowID);    NSRect rect = [[NSScreen mainScreen] frame];    CGImageRef imgRef = CGWindowListCreateImageFromArray(rect, windowsRef, kCGWindowImageDefault);    CFRelease(windowsRef);    NSImage *img = [[NSImage alloc] initWithCGImage:imgRef size:NSZeroSize];    CGImageRelease(imgRef);    return img;}




// 屏幕截图CGImageRef refImg = CGWindowListCreateImage(CGRectInfinite, kCGWindowListOptionOnScreenOnly, kCGNullWindowID, kCGWindowImageDefault);NSBitmapImageRep *imageRep = [[NSBitmapImageRep alloc] initWithCGImage:refImg];CFRelease(refImg);// 保存到磁盘NSData *dataImage = [imageRep representationUsingType:NSJPEGFileType properties:@{NSImageCompressionFactor:@(0.8)}];[dataImage writeToFile:filePath atomically:YES];


阅读全文
0 0
原创粉丝点击