适用于iphone应用的TIFF图像格式

时间:2010-09-20 12:37:57

标签: iphone-sdk-3.0

我正在开发iphone应用程序,我需要将图像保存为.tiff格式。 可以使用UIImagePNGRepresentation方法将图像保存为png格式,使用UIImageJPEGRepresentation将图像保存为JPEG格式。但我需要将imageview捕获的签名保存为tiff格式。 我无法使用NSImage类,因此我可以调用TIFFRepresentation方法。 我怎么能这样做。给我建议...... 提前谢谢......

2 个答案:

答案 0 :(得分:1)

我不知道你的意思是“由imageview捕获”。保存为TIFF的方法直到iOS 4才会引入。以下是将任意文件保存为TIFF的示例代码;您可以使用任何文件格式数据执行此操作,无论您如何获取它。您需要链接到ImageIO框架并执行#import <ImageIO/ImageIO.h>

NSURL* url = [[NSBundle mainBundle] URLForResource:@"colson" withExtension:@"jpg"];
CGImageSourceRef src = CGImageSourceCreateWithURL((CFURLRef)url, NULL);

NSFileManager* fm = [[NSFileManager alloc] init];
NSURL* suppurl = [fm URLForDirectory:NSApplicationSupportDirectory 
                            inDomain:NSUserDomainMask 
                   appropriateForURL:nil 
                              create:YES error:NULL];
NSURL* tiff = [suppurl URLByAppendingPathComponent:@"mytiff.tiff"];
CGImageDestinationRef dest = CGImageDestinationCreateWithURL((CFURLRef)tiff, 
    (CFStringRef)@"public.tiff", 1, NULL);
CGImageDestinationAddImageFromSource(dest, src, 0, NULL);
bool ok = CGImageDestinationFinalize(dest);
NSLog(@"result %i", ok); // 1, all went well
// and don't forget memory management, release source and destination, NSFileManager
[fm release]; CFRelease(src); CFRelease(dest);

答案 1 :(得分:0)

嗯,我没有为iPhone开发,所以不能告诉你是否有一种神奇的API方式来做到这一点,但很多年前我不得不手动创建TIFF图像 。 / p>

如果您习惯于使用框架的CreateThisStuffAsAnImage()方法,那么TIFF格式有点令人讨厌,但您可以在此处获取规范并自行创建文件:

http://partners.adobe.com/public/developer/tiff/index.html#spec