Java扩展返回一个Bitmap(image)作为字节数组作为字符串,我需要在游戏中显示该图像。怎么样?

问题描述 投票:0回答:1

所以我有一个Java扩展名(Java代码:https://pastebin.com/cpwf5LzT)。它具有1个函数,并且该函数具有1个称为String的参数,即fname。然后返回String。该函数应该从fname的路径中获取文件,如果它是图像文件,则以Bitmap的形式获取。然后将Bitmap更改为字节数组(byte[]),然后将字节数组更改为String并返回它。

扩展程序工作正常,但是我的问题是我不知道如何更改函数将返回到字节数组和字节数组的String变量,以将其精灵化或粘贴到表面上。

所以任何对这类东西有一定了解的人都能帮助我吗?谢谢!

UPDATE#1:

所以我设法将输出字符串添加到缓冲区中并绘制它,但是与原始图像相比,这就是原来的样子:image

如果我制作一个新的子画面,将该子画面绘制到一个表面上并将该表面的位图获取到缓冲区,结果很好...

这是我使用的代码:https://pastebin.com/KhPhVr5p(load_image函数是java扩展的函数)(draw_buffer函数是使用this extension's functions的函数,应该绘制缓冲区)

也许是因为buffer_getpixel扩展名?我可以用什么来代替它?

java arrays bitmap surface game-maker
1个回答
0
投票

这里至少有几个问题,

  • buffer _ * _ surface函数需要原始RGBA数据,而不是PNG文件。
  • 您以字符串形式返回内容,这可能会出现问题,具体取决于如何处理NUL终止。如果您的文件被切断(在修复格式之后),请尝试将其编码为base64。
© www.soinside.com 2019 - 2024. All rights reserved.