这是我如何将JPEG或PNG文件加载到CGImage:
imgDataProvider = CGDataProviderCreateWithFilename( [imgFilepath UTF8String] );
if( [[imgFilepath pathExtension] isEqualToString: @"png"] )
{
image = CGImageCreateWithPNGDataProvider(imgDataProvider, NULL, true, kCGRenderingIntentDefault);
}
else if( [[imgFilepath pathExtension] isEqualToString: @"jpg"] || [[imgFilepath pathExtension] isEqualToString: @"jpeg"] )
{
image = CGImageCreateWithJPEGDataProvider(imgDataProvider, NULL, true, kCGRenderingIntentDefault);
}
不幸的是,这不是一个CGImageCreateWith
…HEIF的变体
这比我想象的要容易
imageSrc = CGImageSourceCreateWithURL( (CFURLRef)[NSURL fileURLWithPath:imgFilepath], nil );
image = CGImageSourceCreateImageAtIndex( imageSrc, 0, nil );