[英]How to convert BufferedImage(RGB) to BufferedImage(ARGB or RGBA)?
[英]Get RGBA pixels from ARGB BufferedImage?
有沒有一種簡單的方法可以從argb BufferedImage
獲取rgba int[]
? 我需要將其轉換為opengl,但是我不想遍歷像素數組並自己進行轉換。
GL_BGRA
像素格式和反向打包像素。 從表面BGRA
並不像您想要的,但讓我解釋一下。
像glTexImage2D (...)
類的調用執行所謂的像素傳輸,涉及打包和解包圖像數據。 在像素傳輸過程中,可能會執行數據轉換,可能會遵循特殊的對齊規則,等等。 除了明顯的RGBA
組件順序之外,您還可以采用多種不同的布局傳輸像素。
如果將字節順序( 例如,數據類型= GL_UNSIGNED_INT_8_8_8_8_REV
)與GL_BGRA
格式一起GL_BGRA
,則可以有效地傳輸ARGB像素,而無需您付出任何實際努力。
glTexImage2D (...)
調用: glTexImage2D (..., GL_BGRA, GL_UNSIGNED_INT_8_8_8_8_REV, image);
_REV
打包數據類型的通常用例是處理不同處理器之間的字節序差異,但是當您想要反轉圖像中組件的順序時,它也很方便(因為沒有GL_ARGB
這樣的東西)。
不要為OpenGL轉換內容-它完全有能力單獨執行此操作。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.