Я сохраняю фотоальбом, хочу, чтобы файл был .png, но он сохраняется как .jpeg? Можно ли даже сохранить .png в фотоальбом?
вот мой код:
CGContextRef MyCreateBitmapContext (int pixelsWide,int pixelsHigh)
{
CGContextRef context = NULL;
//CGColorSpaceRef colorSpace;
void * bitmapData;
int bitmapByteCount;
int bitmapBytesPerRow;
bitmapBytesPerRow = (pixelsWide * 4);
bitmapByteCount = (bitmapBytesPerRow * pixelsHigh);
//colorSpace = CGColorSpaceCreateWithName(kCGColorSpaceGenericRGB);
CGColorSpaceRef colorSpace = CGColorSpaceCreateDeviceRGB();
bitmapData = malloc( bitmapByteCount );
if (bitmapData == NULL)
{
fprintf (stderr, "Memory not allocated!");
return NULL;
}
context = CGBitmapContextCreate (bitmapData,
pixelsWide,
pixelsHigh,
8,//bits per component
bitmapBytesPerRow,
colorSpace,
kCGImageAlphaPremultipliedLast);
if (context== NULL)
{
free (bitmapData);
fprintf (stderr, "Context not created!");
return NULL;
}
CGColorSpaceRelease( colorSpace );
return context;
}
и
- (IBAction)save:(id)sender{
myBitmapContext = MyCreateBitmapContext (400, 300);
// ********** Your drawing code here **********
CGContextSetRGBFillColor (myBitmapContext, 1, 0, 0, 1);
CGContextFillRect (myBitmapContext, CGRectMake (0, 0, 400, 300 ));
// ********** Your drawing code here **********
CGImageRef imageRef = CGBitmapContextCreateImage(myBitmapContext);
UIImage * image = [[UIImage alloc] initWithCGImage:imageRef];
//NSData* imdata = UIImagePNGRepresentation ( image );// get PNG representation
//UIImage* im2 = [UIImage imageWithData:imdata]; // wrap UIImage around PNG representation
UIImageWriteToSavedPhotosAlbum(image, nil, nil, nil); // save to photo album
[image release];
CGImageRelease(imageRef);
CGContextRelease(myBitmapContext);
}
большое спасибо за любые идеи