【发布时间】:2023-04-09 12:21:01
【问题描述】:
我需要将 int[] 转换为 byte[] 指针。 为了能够逐像素填充 WriteableBitmap 的条目,需要执行上述操作,如下所示:
//previewBuffer1 is of type byte[]
WriteableBitmap wb1 = new WriteableBitmap(nVidWidth, nVidHeight);
int k=0;
// wb1.Pixels is of type int[] by default
byte* data = (byte*) wb1.Pixels; // ****THIS DOESN'T WORK. THROWS ERROR. HOW CAN I ACCOMPLISH THIS***
for (int i=0; i<nVidHeight; i++){
for (int j=0; j<nVidWidth; j++){
byte grayscaleval = previewBuffer1[k];
data [4*k] = grayscaleval ;
data [4*k + 1] = grayscaleval ;
data [4*k + 2] = grayscaleval ;
k++;
}
}
如何获得 wb1.Pixels 的 int[] 类型的 byte* 指针?
【问题讨论】:
-
为什么不使用 int[] 执行操作?为什么需要字节[]?
-
好吧。 WriteableBitmap 将图像信息作为 RGBA 存储在单个整数中。要访问 R、G、B 通道,我需要以字节形式访问它们...
-
我不知道是不是只有我一个人,但我发现在 WP8 上编写图像处理应用程序代码非常可怕。不同 API 之间的兼容性似乎很差。
标签: c# image-processing windows-phone-8 windows-phone