我想在內存中保存很多圖像作爲bitmapData。圖像是單色的,所以我實際上不需要RGB或RGBA值。有什麼辦法可以將bitmapData的內部格式設置爲單色或以其他方式顯示除使用BitmapData之外的圖像?AS3單色圖像
Q
AS3單色圖像
0
A
回答
2
不,沒有BitmapData的單色格式。不,你不能在其他任何東西上顯示圖像BitmapData(好吧,着色器等等,但它確實不一樣)。
但是,您可以使用ByteArray保存當前未使用的數據,以便稍後使用某些BitmapData和setPixel
通過將單個通道值拆分爲3個值來設置像素。
1
如果您最多有4張圖像大小相同,您可以重複使用一個BitmapData
對象將其全部存儲在不同的頻道中,並使用ColorMatrixFilter
來顯示您想要的頻道。
這比wvxvw關於將數據存儲在ByteArray中並使用setPixel的建議速度更快(並且可能是較少的代碼)。
// store data in the red channel
bitmap.bitmapData.copyChannel(im1.bitmapData, im1.bitmapData.rect, new Point(), BitmapDataChannel.RED, BitmapDataChannel.RED);
// store data in the green channel
bitmap.bitmapData.copyChannel(im2.bitmapData, im2.bitmapData.rect, new Point(), BitmapDataChannel.GREEN, BitmapDataChannel.GREEN);
// e.g. filter the bitmap to just show the green channel
// (1's in first col for red, 3rd col for blue, 4th for alpha
var greenChannelFilter:ColorMatrixFilter = new ColorMatrixFilter(
[ 0,1,0,0,0,
0,1,0,0,0,
0,1,0,0,0,
0,0,0,0,255 ]);
bitmap.filters = [greenChannelFilter];
相關問題
- 1. 着色灰度圖像as3
- 2. AS3 - 調整圖像顏色
- 3. 將彩色圖像轉換爲單色as3
- 4. 單色圖像顏色
- 5. AS3色調位圖
- 6. 圖像與AS3
- 7. As3放大圖像
- 8. AS3 - 圖像平滑
- 9. 閱讀單色位圖像素顏色
- 10. 如何使用AS3和Adobe Air檢測圖像的顏色?
- 11. 使用as3更改圖像特定部分的顏色
- 12. 如何發送圖像AS3
- 13. AS3:從xml加載圖像
- 14. 在AS3中創建圖像
- 15. 在as3中縮放圖像?
- 16. 獲取圖像在AS3
- 17. AS3:從加載圖像
- 18. as3水平居中圖像
- 19. As3加載空白圖像
- 20. AS3圖像從xml加載
- 21. AS3 Flash翻轉圖像
- 22. Flash AS3圖像效果
- 23. as3:重新加載圖像
- 24. 在AS3發送圖像
- 25. as3單擊縮略圖以放大圖像
- 26. UINT16單色圖像到8位單色Qimage使用freeImage
- 27. 顏色庫AS3
- 28. 試圖在單擊按鈕時轉換按鈕顏色as3
- 29. 檢查圖像是否是單色的
- 30. 顏色動態菜單pgn圖像