[英]Read bytes from pixels - libGDX
H ow can I convert given Pixmap
into byte array ? ^ h流量可以转换我给
Pixmap
成字节数组?
byte[] bytes = Gdx.files.internal("image.png").readBytes();
// pass the correct bytes into pixmap
Pixmap pixmap = new Pixmap(bytes, 0, bytes.length);
byte[] sameBytes = new byte[SIZE];
int count = 0;
for (int x = 0; x < pixmap.getWidth(); x++) {
for (int y = 0; y < pixmap.getHeight(); y++) {
int pixel = pixmap.getPixel(x, y);
sameBytes[count++] = ((pixel >> 24) & 0xff);
sameBytes[count++] = ((pixel >> 16) & 0xff);
sameBytes[count++] = ((pixel >> 8) & 0xff);
sameBytes[count++] = ((pixel ) & 0xff);
}
}
// sameBytes is not correct bytes into pixmap
Pixmap pixmap = new Pixmap(sameBytes, 0, sameBytes.length);
Couldn't load pixmap from image data
无法从图像数据加载像素图
Perhaps this might work 也许这可能有效
for (int x = 0; x < pixmap.getWidth(); x++) {
for (int y = 0; y < pixmap.getHeight(); y++)
int pixel = pixmap.getPixel(x, y);
sameBytes[count++] = ((pixel & 0xff000000) >>> 24);
sameBytes[count++] = ((pixel & 0x00ff0000) >>> 16);
sameBytes[count++] = ((pixel & 0x0000ff00) >>> 8);
sameBytes[count++] = ((pixel & 0x000000ff));
}
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.