2010-08-10 48 views
1

我有这些代码:调整大小的NSData设置成UIImage的

UIImage * img = [[UIImage alloc] initWithData:[NSData dataWithContentsOfURL:[NSURL URLWithString:IMAGEURL]]]; 
[self.imageView setImage:img]; 

但IMAGEURL包含高分辨率图像,因此需要较长的时间来加载。我可以调整图像数据的大小来加快载入速度吗?

任何帮助将不胜感激。

谢谢。

回答

2

不,为了调整图像大小,您至少应该一次读取图像,所以除非服务器为您准备了低质量的版本,否则您无能为力。

除非你很勇敢,图像是JPEG:libjpeg有一个函数来读取下采样2,4或8倍的图像。对于1/8的比例,它读取DCT块并仅取得恒定分量。但是这会更复杂一点。阅读时间将大幅缩短。

请参阅iphone-reading-an-area-of-an-image关于此。