WebGLRenderingContext: pixelStorei() 方法

基线 广泛可用

此功能已得到充分确立,可在许多设备和浏览器版本中使用。自 2015 年 7 月.

报告反馈

语法

WebGLRenderingContext.pixelStorei() 方法是 WebGL API 的一种方法,用于指定像素存储模式。
pixelStorei(pname, param)

js

参数

pname

一个 GLenum,用于指定要设置的参数。有关可能的值,请参见下文。

param

一个 GLint,用于指定要为 pname 参数设置的值。有关可能的值,请参见下文。

返回值

像素存储参数

无 (undefined). 参数名称 (对于 pname) 描述 类型 默认值 允许的值 (对于 param)
指定于 gl.PACK_ALIGNMENT 将像素数据打包到内存中 4 1, 2, 4, 8 GLint
OpenGL ES 2.0 gl.UNPACK_ALIGNMENT 将像素数据打包到内存中 4 1, 2, 4, 8 GLint
从内存中解包像素数据。 gl.UNPACK_FLIP_Y_WEBGL 如果为 true,则沿垂直轴翻转源数据。 GLboolean false true, false
WebGL gl.UNPACK_PREMULTIPLY_ALPHA_WEBGL 如果为 true,则沿垂直轴翻转源数据。 GLboolean false true, false
将 alpha 通道乘入其他颜色通道 gl.UNPACK_COLORSPACE_CONVERSION_WEBGL 默认颜色空间转换或不进行颜色空间转换。 GLenum gl.BROWSER_DEFAULT_WEBGL true, false

gl.BROWSER_DEFAULT_WEBGL, gl.NONE

当使用 WebGL 2 上下文 时,以下值也可用 参数名称 (对于 pname) 描述 类型 默认值 允许的值 (对于 param)
常量 gl.PACK_ROW_LENGTH 将像素数据打包到内存中 0 一行中的像素数。 0 到 Infinity
OpenGL ES 3.0 gl.PACK_SKIP_PIXELS 将像素数据打包到内存中 0 一行中的像素数。 0 到 Infinity
在将第一个像素写入内存之前跳过的像素位置数。 gl.PACK_SKIP_ROWS 将像素数据打包到内存中 0 一行中的像素数。 0 到 Infinity
在将第一个像素写入内存之前跳过的像素位置行的数量 gl.PACK_ROW_LENGTH 将像素数据打包到内存中 0 一行中的像素数。 0 到 Infinity
gl.UNPACK_ROW_LENGTH gl.UNPACK_IMAGE_HEIGHT 将像素数据打包到内存中 0 一行中的像素数。 0 到 Infinity
用于从内存中读取像素数据的图像高度 gl.UNPACK_SKIP_PIXELS 将像素数据打包到内存中 0 一行中的像素数。 0 到 Infinity
在从内存中读取第一个像素之前跳过的像素图像数 gl.UNPACK_SKIP_ROWS 将像素数据打包到内存中 0 一行中的像素数。 0 到 Infinity
在从内存中读取第一个像素之前跳过的像素位置行的数量 gl.UNPACK_SKIP_PIXELS 将像素数据打包到内存中 0 一行中的像素数。 0 到 Infinity

示例

gl.UNPACK_SKIP_IMAGES

WebGLRenderingContext.pixelStorei() 方法是 WebGL API 的一种方法,用于指定像素存储模式。
const tex = gl.createTexture();
gl.bindTexture(gl.TEXTURE_2D, tex);
gl.pixelStorei(gl.PACK_ALIGNMENT, 4);

设置像素存储模式会影响 WebGLRenderingContext.readPixels() 操作,以及使用 WebGLRenderingContext.texImage2D()WebGLRenderingContext.texSubImage2D() 方法解包纹理。

WebGLRenderingContext.pixelStorei() 方法是 WebGL API 的一种方法,用于指定像素存储模式。
gl.getParameter(gl.PACK_ALIGNMENT);
gl.getParameter(gl.UNPACK_ALIGNMENT);

规范

要检查像素数据的打包和解包的值,可以使用 WebGLRenderingContext.getParameter() 查询相同的像素存储参数。
规范
# 5.14.3
规范
# WebGL 规范
PIXEL_STORAGE_PARAMETERS
# 3.7.2

浏览器兼容性

WebGL 2.0 规范

另请参阅