Macos 生成高清二维码图片

2023-04-03  本文已影响0人  情来情去情随缘

生成的二维码很小,需要放大成高清图

//字符串转二维码

- (NSImage *)stringTransformToQRCodeWithSize:(CGSize)size

{

    NSData *stringData = [self dataUsingEncoding:NSUTF8StringEncoding];

    //生产原始二维码图片

    CIFilter *qrFilter = [CIFilter filterWithName:@"CIQRCodeGenerator"];

    [qrFilter setValue:stringData forKey:@"inputMessage"];

    [qrFilter setValue:@"L" forKey:@"inputCorrectionLevel"];

    //生成高清大图

    CIImage *originImage = qrFilter.outputImage;

    CIImage *bigImage = [originImage imageByApplyingTransform:CGAffineTransformMakeScale(size.width/originImage.extent.size.width, size.height/originImage.extent.size.height)];

    CGImageRef sourceImageRef = [[CIContext context] createCGImage:bigImage fromRect:bigImage.extent];

    NSImage *sourceImage = [[NSImage alloc] initWithCGImage:sourceImageRef size:size];

    return sourceImage;

}

上一篇下一篇

猜你喜欢

热点阅读