[英]Create image from pixel array in java
這是我的片段。 我的原始數組是a[3][][]
,rgb值存儲在其中,我想根據它們創建一個新圖像。 以下代碼的最后一行導致找不到符號。
BufferedImage img=newBufferedImage(bi.getWidth(),bi.getHeight(),BufferedImage.TYPE_INT_RGB);
for(int r=0; r<bi.getHeight(); r++)
for(int c=0; c<bi.getWidth(); c++)
{
int red=a[0][r][c];
int green=a[1][r][c];
int blue=a[2][r][c];
int rgb = (red << 16) | (green << 8) | blue;
img.setRGB(c, r, rgb);
}
ImageIO.write(img,"jpg", "abc.jpg");
有什么建議么?
您將錯誤的參數傳遞給ImageIO.write()
。 在docs中 ,這是3種可能性:
write(RenderedImage im, String formatName, File output)
write(RenderedImage im, String formatName, ImageOutputStream output)
write(RenderedImage im, String formatName, OutputStream output)
如果要將圖像寫入名為abc.jpg
的文件,請嘗試:
ImageIO.write(img, "jpg", new File("abc.jpg");
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.