簡體   English   中英

將java.awt.Image保存到磁盤

[英]Save java.awt.Image to disk

我有一個第三方庫,它從視頻流中生成java.awt.Image對象。 (實際上,它最初用於解碼.h264文件,然后顯示在JFrame中解碼的圖像)。

現在,我想使用該lib捕獲流的幾個圖像並將它們保存到硬盤。 那么,我該怎么做才能將這些java.awt.Image保存到文件中?

ImageIO

類型可以是“jpg”,“png”(Java <1.6)或“gif”(Java 1.6+)。

要保存ToolKitImage,您可以執行以下操作。

BufferedImage bufferedImage= new BufferedImage(toolkitImage.getWidth(), toolkitImage.getHeight(), BufferedImage.TYPE_INT_RGB);
image.getGraphics().drawImage(toolkitImage, 0, 0, null);
ImageIO.write(bufferedImage, "jpg", new File("C:\\myImage.jpg"));
public void savePic(Image image, String type, String dst){ 
    int width = image.getWidth(this); 
    int height = image.getHeight(this);
    BufferedImage bi = new BufferedImage(w, h, BufferedImage.TYPE_3BYTE_BGR);
    Graphics g = bi.getGraphics(); 
    try { 
        g.drawImage(image, 0, 0, null);
        ImageIO.write(bi, type, new File(dst)); 
    } catch (IOException e) { 
        // TODO Auto-generated catch block 
        e.printStackTrace(); 
    } 
}

請學習本教程: 編寫/保存圖像

這是一項基本任務,ImageIO lib可以幫助您輕松實現這一目標。

就像是;

Image img = /* your image */
BufferedImage bi = (BufferedImage)img;
File f = new File("./output.png");
ImageIO.write(bi, "png", f);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM