2012-08-07 51 views
0

我用CGContextDrawImage放大圖片,但是當我縮小它的效率很低, 有沒有什麼辦法或者改變提高效率。IOS CGContextDrawImage放大圖片,效率很低

//bitmap is 1000X1000 when i Shrink it use CGContextDrawImage 
CGContextDrawImage(context, CGRectMake(cbx, cby, image.size.width-X, iamge.size.height-Y),[image CGImage]); 
//X and Y increased gradually 
+0

我明白英語不是你的主要語言,但你寫的是沒有意義的。你需要澄清你的問題。問題是,如果您想以全分辨率繪製圖像,但圖像太大,則會導致內存不足? – 2012-08-07 12:45:12

+0

我改變了我的問題。感謝您的評論。 – zt9788 2012-08-08 01:27:29

回答

0

如果你看一下CGContextRef,有設置插值質量的選項 - 你希望它低的速度:CGContextSetInterpolationQuality(...);你也可以嘗試使用Accelerate函數(具體查看vImage相關的函數),但不清楚這將有助於使速度更快(並且這裏有一條學習曲線)。

如果你可以用2的冪來縮小它,你可以通過每隔一行取其他像素來調整大小 - 這將會非常快。

此外,每次縮小圖像時,緩存該圖像,並且如果必須調整爲較小圖像的大小,請使用先前縮小的圖像,而不是以大圖像爲起點。

+1

非常感謝你,雖然沒有達到我想要的效率,但足以解決我們目前的問題 – zt9788 2012-08-08 02:17:14