2012-04-30 44 views
1

目前我和我的團隊的其他人正在嘗試爲學生項目構建一個導航應用程序。我們正在使用JXMapKit,並且想要爲地圖上的路標設置另一個randerer,因此需要一個使用Graphics2D來顯示圖像的方法(至少我相信方法是用這個Object來實現的)。所以這就是問題:我如何從我的硬盤獲得一個正常的圖像到這個Graphics2D對象中?我讀了一些關於我需要一個Bufferedimage但是這並沒有幫助我很多的東西。 我得有人在我的意思的一點,因爲我的英語,講友好不是最好的^^如何從java中獲取硬盤中的圖像進入Bufferdimage

neverless,我希望有人能夠幫助我解決這個問題

回答

1

您可以使用ImageIO.read()這樣的:

String pathToMyFile = "C:\image.jpg"; 
BufferedImage image = ImageIO.read(new File(pathToMyImageFile)); 

返回一個BufferedImage與選自目前登記的那些自動選擇一個ImageReader供給文件的解碼結果。該文件包裝在ImageInputStream中。如果沒有註冊的ImageReader聲稱能夠讀取結果流,則返回null。

然後你可以使用你的Graphics2D對象的drawImage()功能:

int x,y = 10; //the coorinates where to draw the image 
graphics2D.drawImage(image, x, y, null) 
+0

啊非常感謝你 – Aeglasin

+0

感謝,但問題是,我必須覆蓋Bufferdimage用Graphics2D對象或東西就像那樣,因爲我需要在地圖上繪製我的Waypoint的方法有簽名: – Aeglasin

+0

paintWaypoint(Graphics2D arg0,JXMapViewer arg1,Waypoint arg2)。 我認爲在方法簽名中命名的Graphics2D對象是在JXMapViewer上繪製的圖像,還是我對這種方法在我腦海中的工作方式有錯誤的描述? – Aeglasin