我使用方法getRGB()
從BufferedImage
獲得像素。像素存儲在名爲data[]
的陣列中。在對數據數組進行一些操作後,我需要再次創建一個BufferedImage
,以便我可以將它傳遞給將從此數據數組顯示修改後的圖像的模塊,但我堅持使用它。如何從包含像素的數組創建BufferedImage?
2
A
回答
2
BufferedImage bufferedImage = new BufferedImage(width, height, BufferedImage.TYPE_INT_RGB);
然後再次設置像素。
bufferedImage.setRGB(x, y, your_value);
PS:如在評論中指出,請使用該方法的getRGB()使用的答案從@TacticalCoder
-1
19
我從BufferedImage中的像素。 像素存儲在名爲data []的數組中。
請注意,這可能會非常慢。如果您的BufferedImage支持它,您可能需要訪問底層的int []並直接從那裏複製/讀取像素。
例如,您數據[]快速度複製到底層INT []新BufferedImage的:
BufferedImage bi = new BufferedImage(w, h, BufferedImage.TYPE_INT_ARGB);
final int[] a = ((DataBufferInt) res.getRaster().getDataBuffer()).getData();
System.arraycopy(data, 0, a, 0, data.length);
當然,你要確保你的數據[]包含與BufferedImage相同的像素(本例中爲ARGB)。
相關問題
- 1. 從字節數組創建BufferedImage java
- 2. 如何創建一個包含元素值的數組?
- 3. 如何從原始數據創建BufferedImage
- 4. 如何從位圖數據創建BufferedImage
- 5. 使用像素創建一個BufferedImage int []
- 6. 如何創建像素值數組?
- 7. 如果元素包含空格,創建更長的數組? (JAVA)
- 8. 如何創建包含數組的json數組
- 9. 如何創建一個包含其他值的數組數組?
- 10. 將2D像素數組轉換爲BufferedImage
- 11. 從YBR_FULL創建BufferedImage Dicom圖像
- 12. 從圖像格式創建BufferedImage 8BPP
- 13. 如何從Java中的像素浮點數組創建柵格?
- 14. 從包含特定字符串的數組創建數組
- 15. 如何創建僅包含圖像和JLabel的Java Swing組件?
- 16. 如何從數組中創建1元素數組的數組?
- 17. 如何旋轉bufferedimage,然後將bufferedImage複製到像素數組中
- 18. 如何從BufferedImage創建8位PNG?
- 19. 如何從SVG路徑創建BufferedImage?
- 20. 如何從文件正確創建BufferedImage?
- 21. 從BufferedImage獲取像素數據
- 22. 創建包含結構值的數組
- 23. 創建新的數組包含對象
- 24. 檢測BufferedImage是否包含透明像素
- 25. 如何創建包含數字和字符的數組?
- 26. 如何編輯BufferedImage中的像素?
- 27. 從PApplet內容創建BufferedImage
- 28. 如何創建包含符合條件的索引的數組?
- 29. 如何創建一個包含每個鍵的數組的NSDictionary?
- 30. 如何創建一個包含真實圖像的字節數組?
您不應該遍歷整個圖像並一次設置一個位。你應該一次複製整個緩衝區。 – 2014-12-09 11:50:39
這是設置bufferedimage中所有像素的可怕方法,不應該被接受。 – tofiffe 2015-10-29 17:48:50