0

SDL_image API 允许您传入 FILE* 并获取 SDL_Surface*。

目前,我正在设计一个地图档案。其中一个文件是一个tileset。这将是一个 PNG 图像(具有无损压缩的出色格式)。

我正在从文件中读取所有字节并将它们放入缓冲区(字节数组)中。

我将如何从字节数组中创建 FILE*?我不在乎我是否必须修改 FILE 结构中的任何私有内容,这是我最初的方法,但我在弄清楚该结构的几个成员的用途时遇到了困难。(我指的是 _iobuf 结构)

编辑

您必须了解我使用的是 zlib,这意味着在从存档中的未压缩文件中读取时,我使用的是函数 unzReadCurrentFile。我不知道是否有办法在使用 zlib 时直接获取 FILE*。

4

1 回答 1

1

你不能。这是不可能的。AFILE*只是一个文件。对于 SDL API 使用 CI/O 并因此几乎与死鱼一样有用这一事实,您无能为力。

于 2012-09-15T15:13:06.793 回答