Question

The following code converts a PDF page into a JPEG. It runs as expected on Snow Leopard:

...
//get the image from the bitmap context
CGImageRef image = CGBitmapContextCreateImage(outContext);

//create the output destination
CGImageDestinationRef outfile = CGImageDestinationCreateWithURL(fileUrl, kUTTypeJPEG, 1, NULL);

//add the image to the output file
CGImageDestinationAddImage(outfile, image, NULL);
CGImageDestinationFinalize(outfile);
...

This code fails when compiled for iPhone because the iPhone version of Core Graphics does not include CGImageDestinationRef. Is there any way to save CFImageRef to a jpeg using the native iPhone frameworks and libraries? The only alternative I can think of is to ditch Core Graphics and use ImageMagick.

Was it helpful?

Solution

UIImage *myImage = [UIImage imageWithCGImage:image];
NSData *jpgData = UIImageJPEGRepresentation(myImage, 0.9f);
[jpgData writeToFile:...
Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top