2012-07-20 98 views
0

我需要能夠從網格上的一個大圖像中獲取某些圖像。有點像在遊戲「我的世界」中,有紋理包可以重新設定遊戲的外觀。爲了保持文件的大小,這並不是所有的實際圖片。它是一張圖片上所有不同塊紋理的網格。如何從java中的圖像網格獲取一個圖像?

我需要做一些類似的,但使用這樣的畫面:http://f.cl.ly/items/122C0G3R3P422R2I452o/fontes_blanches_alpha.png

具體來說,我希望能夠從一個ArrayList有點像調用從這張照片的每個字符:

(僞代碼)

ArrayList<Pictures> chars = new ArrayList<Pictures>(); 

    JFrame.add(chars.get(x)); 

那麼,我將如何分開的圖片只顯示其中的一部分?

+0

你的問題是什麼? – user1329572 2012-07-20 19:53:59

+0

如何分離圖片以僅顯示圖片的一部分? – jackcogdill 2012-07-20 20:01:37

+0

你不是在尋找紋理圖集? http://en.wikipedia.org/wiki/Texture_atlas,只是保持它們相同的大小和包含每個紋理的座標的文件。 – GriffinHeart 2012-07-20 20:32:15

回答

1

您可以嘗試將字體圖像加載到BufferedImage對象中。然後你可以說bufferedImage.getSubimage(x,y,w,h)得到BufferedImage類型的子圖像。當你有一個subImage時,你可以將它添加到你的「chars」ArrayList中。

+0

謝謝,我會試試 – jackcogdill 2012-07-20 20:10:01

+0

請注意,在命名'getSubimage()'方法時,Sun並不堅持自己推薦的命名法。 :( – 2012-07-21 01:15:46

+0

哎呀,謝謝,對不起。 – lukey 2012-07-21 07:03:31