gpt4 book ai didi

java - 如何在 android 中压缩 Pixmap/使用 cim 文件?

转载 作者:行者123 更新时间:2023-11-29 05:21:05 24 4
gpt4 key购买 nike

如何压缩 LibGDX 像素图?我想将它保存在磁盘上,但它使用了大约 4MB,这太多了,而且要花很长时间才能保存它。

final Pixmap pixmap = ScreenUtils.getFrameBufferPixmap(x, y, w, h);
FileHandle screenshot = Gdx.files.local("something.png");
PixmapIO.writePNG(screenshot, pixmap);

我看到有一个PixmapIO.writeCIM,速度挺快的,输出也挺小的。

我可以在 Android 中显示 something.cim 文件吗? docu说,cim 应该只在 libgdx 中使用。争论这是旧文档,也许有新的东西?

最佳答案

http://badlogicgames.com/forum/viewtopic.php?f=11&t=8947

  int w = p.getWidth();
int h = p.getHeight();

int[] pixels = new int[w * h];
for (int y=0; y<h; y++) {
for (int x=0; x<w; x++) {
//convert RGBA to RGB
int value = p.getPixel(x, y);
int R = ((value & 0xff000000) >>> 24);
int G = ((value & 0x00ff0000) >>> 16);
int B = ((value & 0x0000ff00) >>> 8);
int A = ((value & 0x000000ff));

int i = x + (y * w);
pixels[ i ] = (A << 24) | (R << 16) | (G << 8) | B;
}
}

Bitmap b = Bitmap.createBitmap(pixels, w, h, Config.ARGB_8888);
b.compress(CompressFormat.JPEG, quality, handle.write(false));

关于java - 如何在 android 中压缩 Pixmap/使用 cim 文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24711962/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com