2011-05-02 235 views
0

我正在進行圖像處理。我有一個固定大小的緩衝圖像從其他緩存圖像加載緩存圖像

BufferedImage targetImage = new BufferedImage(320, 240,BufferedImage.TYPE_INT_RGB); 

可以說原始緩衝圖像的大小爲180乘240。

現在我想加載原始圖像(180X240)到目標圖像(320X240)或以某種方式將scaledImage寬度和高度更改爲320 240將底部有白色填充。

在此先感謝。

+0

所以,你只是想縮小圖像,而縮放呢?本教程介紹瞭如何做到這一點:[繪製圖像](http://download.oracle.com/javase/tutorial/2d/images/drawimage.html) – Jesper 2011-05-02 14:14:36

回答

4

你應該能「畫」源圖像到目標圖像,即

targetImage.getGraphics().drawImage(sourceImage, 0, 0, 
    Math.min(targetImage.getWidth(), sourceImage.getWidth()), 
    Math.min(targetImage.getHeight(), sourceImage.getHeight()), 
    null); 

請注意,增加180x240320x240將意味着你要麼扭曲的形象,降低圖像的一部分在頂部/底部或者向左/右(而不是頂部/底部)具有一些「空的」區域。

+0

我只需要將圖像繪製爲原始大小,然後將其填充如果圖像較小,則向右或向下移動。所以在這種情況下,它不會被扭曲。 – 2011-05-02 14:39:22