buffer_get_surface

该函数将信息从表面写入给定的缓冲区。

该缓冲区必须是之前创建的,并且应该是一个足够大的 1 字节对齐缓冲区,足以存储您要写入的表面的数据 (如果不确定,请使用 grow 缓冲区或参见本节底部的示例页)。

表面的信息将始终写入缓冲区的起始位置(无论寻道位置如何),但您可以选择偏移值(以字节为单位),以便从缓冲区的起始位置移动写入位置。

表面的格式将影响表面写入缓冲区的方式。请记住,相同的格式在不同的平台上可能会以不同的方式编写。

 

语法:

buffer_get_surface(buffer, surface, offset);

参数类型描述
bufferBuffer要使用的缓冲区。
surfaceSurface要使用的表面。
offsetReal数据偏移值(以字节为单位)。

 

返回:

N/A

 

例子:

buffer = buffer_create(surf_width * surf_height * 4, buffer_fixed, 1);
buffer_get_surface(buffer, surface, 0);

此代码将创建一个固定大小的缓冲区,该缓冲区具有根据表面的确切大小存储每像素4字节(R、G、B和A分量)的容量,然后将表面数据复制到该缓冲区中。