2012-06-07 41 views
51

我需要添加一些文本到現有的表格圖像(PNG)。 這意味着我需要在圖像上「書寫」,我需要選擇文本位置。 我該怎麼辦? 非常感謝。如何將文本添加到java中的圖像?

+0

什麼是您使用來表示圖像?你是否已經在java中使用某種格式的圖像,或者你想編寫一個完整的java程序來獲取圖像,並從頭開始寫入文本並返回該圖像? –

+0

+1,很好的問題:-)讓我學到了東西 –

回答

101

這很容易,只需從圖像中獲取Graphics對象並在圖像上繪製字符串。這個例子(輸出圖像)這樣做:

public static void main(String[] args) throws Exception { 
    final BufferedImage image = ImageIO.read(new URL(
     "http://upload.wikimedia.org/wikipedia/en/2/24/Lenna.png")); 

    Graphics g = image.getGraphics(); 
    g.setFont(g.getFont().deriveFont(30f)); 
    g.drawString("Hello World!", 100, 100); 
    g.dispose(); 

    ImageIO.write(image, "png", new File("test.png")); 
} 

輸出(test.png):

output

+27

對於圖形處理主題Lenna +1) – Xeon

+0

@ Xeon:永遠! :) – dacwe

+2

另請參閱[此示例](http://stackoverflow.com/a/6296381/418556)使用'GlyphVector'爲其他有趣的文本/圖像組合。 –

相關問題