3
我有一個尺寸爲16x6080的圖像。這是一個堆疊的圖像,其中包含16x16部分的國旗。我的目標是僅從該圖像中提取特定的國家/地區標誌並將其保存爲自己的文件。這裏是我當前的代碼使用java裁剪圖像的問題image.getSubimage
//Original Image
BufferedImage image = ImageIO.read(new File(countryImageNamePath));
System.out.println("Original Image Dimension: "+image.getWidth()+"x"+image.getHeight());
//Get the cropped image
BufferedImage out = image.getSubimage(0, 1808, 16, 16);
//Create a file to stream the out buffered image to
File croppedFile = new File(countryImagePath + countryName + ".gif");
//Write the cropped file
ImageIO.write(out, "gif", croppedFile);
產生的輸出是
Original Image Dimension: 16x6080
Write File : C:\Applications\WorldCoinParser\images\country\US.gif
不要緊,我輸入什麼值的Y座標我總是起點爲x = 0的圖像的頂部和y = 0,寬度和高度爲16.
有沒有人看到我在搞什麼?
謝謝!
我看不出有什麼明顯的錯誤與您的代碼段工程。考慮創建併發布[sscce](http://sscce.org),它使用所有人都可以使用的在線圖像。 – 2013-04-06 17:46:51
原來,這是一個Java 6(及更低版本)內部試圖解析gif文件的錯誤。升級到Java7解決了這個問題。 – 2013-04-06 18:40:45
好吧,我的按鈕,沒有開玩笑嗎?感謝您回覆我們。考慮發佈這個作爲你的問題的答案。 – 2013-04-06 18:41:43