2011-12-15 13 views
0

當我試圖用縮放比例繪製圖像時,我遇到了問題:1280 * 768,它的格式是PNG,它的大小几乎是3.26MB,但是當我將它轉換爲JPEG時,它的大小爲226KB!緩慢的問題消失了! ,在java中,當我繪製大尺寸的圖像時會導致緩慢,這是什麼原因?

我的問題是爲什麼緩慢發生時,試圖繪製一個大尺寸的緩衝圖像?是java處理小圖像的唯一還是什麼?

+3

一個不「繪製」PNG或JPEG(這些只是圖像的序列化格式)。然而,圖像可能會稍微有點不同(或以不同的速度加載:我期望更大的PNG花費更長的時間來加載比小得多的JPG,但實際的圖像繪製速度應該是相同的,除了一些其他的內部樂趣就像一個非blt'able格式的緩衝區)。針對「緩慢」和「不慢」的情況有一個示例測試案例? – 2011-12-15 23:13:26

+0

如果您的意思是在將圖像尺寸轉換爲JPEG時將圖像尺寸縮小,請對其進行註釋。 – 2011-12-15 23:19:00

回答

1

將圖像縮小爲JPEG時,會丟失一些圖像數據,使文件變短。

讀取較短的文件需要較少的時間。 和3.26 MB > 226 KB

您可能在屏幕上看不到差異,原因是原始文件太大,並不是每個像素都可以顯示,但轉換爲JPEG時質量會有所下降。

看看這個網站有關的圖像文件格式:GIF's, PNG's, or JPEG's?

編輯您也可以看看這個網站上的圖像畫面:http://www.kitfox.com/javaOne2007/javaOne-notes.pdf

可以渲染快速使用java.awt.RenderingHints.使用這個圖像與BufferedImageOp中可以使您的圖像加載速度更快(但以一些質量爲代價)。

我希望這有助於!

相關問題