如我們所知,我們可以通過2種方式旋轉位圖。使用Canvas.rotate旋轉位圖的問題
的第一個方法是:
Matrix mt = new Matrix();
mt.postRotate(degree);
Bitmap bitmap = CreateBitmap(src, 0, 0, w, h, mt, true);
canvs.drawBitmap(bitmap, 0, 0, paint);
通過這種方式,我們總是需要爲每個旋轉創建新的位圖,它不是爲高性能遊戲或應用程序的好方法。
的第二個方法是:
canvas.save();
canvas.rotate(degree);
canvas.drawBitmap(bitmap, 0, 0, paint);
canvas.restore();
這樣,我們避免頻繁創建新的位圖,但旋轉位圖是失真,位圖質量比第一種方式更糟糕。
那麼,有沒有第三種方式來高性能和高質量旋轉位圖?
您的任何意見都非常感謝!
非常感謝!我之前已經考慮過GL,但我不想使用它,因爲我的應用程序不僅僅是一個應用程序。 – user457210 2010-09-24 13:58:38