WebGLRenderingContext.pixelStorei()
方法在
WebGL API
specifies the pixel storage modes.
void gl.pixelStorei(pname, param);
Glenum
specifying which parameter to set. See below for possible values.
GLint
specifying a value to set the
pname
parameter to. See below for possible values.
None.
Parameter name (for
pname
)
|
描述 | 类型 | 默认值 |
Allowed values (for
param
)
|
Specified in |
|---|---|---|---|---|---|
gl.PACK_ALIGNMENT
|
Packing of pixel data into memory |
GLint
|
4 | 1, 2, 4, 8 | OpenGL ES 2.0 |
gl.UNPACK_ALIGNMENT
|
Unpacking of pixel data from memory. |
GLint
|
4 | 1, 2, 4, 8 | OpenGL ES 2.0 |
gl.UNPACK_FLIP_Y_WEBGL
|
Flips the source data along its vertical axis if true. |
GLboolean
|
false | true, false | WebGL |
gl.UNPACK_PREMULTIPLY_ALPHA_WEBGL
|
Multiplies the alpha channel into the other color channels |
GLboolean
|
false | true, false | WebGL |
gl.UNPACK_COLORSPACE_CONVERSION_WEBGL
|
Default color space conversion or no color space conversion. |
GLenum
|
gl.BROWSER_DEFAULT_WEBGL
|
gl.BROWSER_DEFAULT_WEBGL
,
gl.NONE
|
WebGL |
当使用 WebGL 2 context , the following values are available additionally:
| 常量 | 描述 | 类型 | 默认值 |
Allowed values (for
param
)
|
Specified in |
|---|---|---|---|---|---|
gl.PACK_ROW_LENGTH
|
Number of pixels in a row. |
GLint
|
0 |
0 to
Infinity
|
OpenGL ES 3.0 |
gl.PACK_SKIP_PIXELS
|
Number of pixel locations skipped before the first pixel is written into memory. |
GLint
|
0 |
0 to
Infinity
|
OpenGL ES 3.0 |
gl.PACK_SKIP_ROWS
|
Number of rows of pixel locations skipped before the first pixel is written into memory |
GLint
|
0 |
0 to
Infinity
|
OpenGL ES 3.0 |
gl.UNPACK_ROW_LENGTH
|
Number of pixels in a row. |
GLint
|
0 |
0 to
Infinity
|
OpenGL ES 3.0 |
gl.UNPACK_IMAGE_HEIGHT
|
Image height used for reading pixel data from memory |
GLint
|
0 |
0 to
Infinity
|
OpenGL ES 3.0 |
gl.UNPACK_SKIP_PIXELS
|
Number of pixel images skipped before the first pixel is read from memory |
GLint
|
0 |
0 to
Infinity
|
OpenGL ES 3.0 |
gl.UNPACK_SKIP_ROWS
|
Number of rows of pixel locations skipped before the first pixel is read from memory |
GLint
|
0 |
0 to
Infinity
|
OpenGL ES 3.0 |
gl.UNPACK_SKIP_IMAGES
|
Number of pixel images skipped before the first pixel is read from memory |
GLint
|
0 |
0 to
Infinity
|
OpenGL ES 3.0 |
Setting the pixel storage mode affects the
WebGLRenderingContext.readPixels()
operations, as well as unpacking of textures with the
WebGLRenderingContext.texImage2D()
and
WebGLRenderingContext.texSubImage2D()
方法。
var tex = gl.createTexture(); gl.bindTexture(gl.TEXTURE_2D, tex); gl.pixelStorei(gl.PACK_ALIGNMENT, 4);
To check the values for packing and unpacking of pixel data, you can query the same pixel storage parameters with
WebGLRenderingContext.getParameter()
.
gl.getParameter(gl.PACK_ALIGNMENT); gl.getParameter(gl.UNPACK_ALIGNMENT);
| 规范 | 状态 | 注释 |
|---|---|---|
|
WebGL 1.0
The definition of 'pixelStorei' in that specification. |
推荐 | Initial definition for WebGL. |
|
WebGL 1.0
The definition of 'Pixel Storage Parameters' in that specification. |
推荐 | Additional pixel storage parameters that aren't specified in OpenGL. |
|
OpenGL ES 2.0
The definition of 'glPixelStorei' in that specification. |
标准 | Man page of the OpenGL ES 2.0 API. |
|
WebGL 2.0
The definition of 'pixelStorei' in that specification. |
编者草案 | Updated definition for WebGL 2. |
|
OpenGL ES 3.0
The definition of 'glPixelStorei' in that specification. |
标准 | Man page of the OpenGL ES 3.0 API. |
The compatibility table in this page is generated from structured data. If you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and send us a pull request.
更新 GitHub 上的兼容性数据| 桌面 | 移动 | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
pixelStorei
|
Chrome 9 | Edge 12 | Firefox 4 | IE 11 | Opera 12 | Safari 5.1 | WebView Android Yes | Chrome Android 25 | Firefox Android Yes | Opera Android 12 | Safari iOS 8 | Samsung Internet Android 1.5 |
WebGL2
|
Chrome 56 | Edge 79 | Firefox 51 | IE 不支持 No | Opera 43 | Safari 不支持 No | WebView Android 58 | Chrome Android 58 | Firefox Android 51 | Opera Android 43 | Safari iOS 不支持 No | Samsung Internet Android 7.0 |
完整支持
不支持
WebGLRenderingContext.readPixels()
WebGLRenderingContext.texImage2D()
WebGLRenderingContext.texSubImage2D()
WebGLRenderingContext
activeTexture()
attachShader()
bindAttribLocation()
bindBuffer()
bindFramebuffer()
bindRenderbuffer()
bindTexture()
blendColor()
blendEquation()
blendEquationSeparate()
blendFunc()
blendFuncSeparate()
bufferData()
bufferSubData()
checkFramebufferStatus()
clear()
clearColor()
clearDepth()
clearStencil()
colorMask()
commit()
compileShader()
compressedTexImage[23]D()
compressedTexSubImage2D()
copyTexImage2D()
copyTexSubImage2D()
createBuffer()
createFramebuffer()
createProgram()
createRenderbuffer()
createShader()
createTexture()
cullFace()
deleteBuffer()
deleteFramebuffer()
deleteProgram()
deleteRenderbuffer()
deleteShader()
deleteTexture()
depthFunc()
depthMask()
depthRange()
detachShader()
disable()
disableVertexAttribArray()
drawArrays()
drawElements()
enable()
enableVertexAttribArray()
finish()
flush()
framebufferRenderbuffer()
framebufferTexture2D()
frontFace()
generateMipmap()
getActiveAttrib()
getActiveUniform()
getAttachedShaders()
getAttribLocation()
getBufferParameter()
getContextAttributes()
getError()
getExtension()
getFramebufferAttachmentParameter()
getParameter()
getProgramInfoLog()
getProgramParameter()
getRenderbufferParameter()
getShaderInfoLog()
getShaderParameter()
getShaderPrecisionFormat()
getShaderSource()
getSupportedExtensions()
getTexParameter()
getUniform()
getUniformLocation()
getVertexAttrib()
getVertexAttribOffset()
hint()
isBuffer()
isContextLost()
isEnabled()
isFramebuffer()
isProgram()
isRenderbuffer()
isShader()
isTexture()
lineWidth()
linkProgram()
pixelStorei()
polygonOffset()
readPixels()
renderbufferStorage()
sampleCoverage()
scissor()
shaderSource()
stencilFunc()
stencilFuncSeparate()
stencilMask()
stencilMaskSeparate()
stencilOp()
stencilOpSeparate()
texImage2D()
texParameter[fi]()
texSubImage2D()
uniform[1234][fi][v]()
uniformMatrix[234]fv()
useProgram()
validateProgram()
vertexAttrib[1234]f[v]()
vertexAttribPointer()
viewport()
ANGLE_instanced_arrays
EXT_blend_minmax
EXT_color_buffer_half_float
EXT_disjoint_timer_query
EXT_frag_depth
EXT_sRGB
EXT_shader_texture_lod
EXT_texture_filter_anisotropic
OES_element_index_uint
OES_standard_derivatives
OES_texture_float
OES_texture_float_linear
OES_texture_half_float
OES_texture_half_float_linear
OES_vertex_array_object
WEBGL_color_buffer_float
WEBGL_compressed_texture_atc
WEBGL_compressed_texture_etc1
WEBGL_compressed_texture_pvrtc
WEBGL_compressed_texture_s3tc
WEBGL_compressed_texture_s3tc_srgb
WEBGL_debug_renderer_info
WEBGL_debug_shaders
WEBGL_depth_texture
WEBGL_draw_buffers
WEBGL_lose_context
WebGL2RenderingContext
WebGLActiveInfo
WebGLBuffer
WebGLContextEvent
WebGLFramebuffer
WebGLObject
WebGLProgram
WebGLQuery
WebGLRenderbuffer
WebGLSampler
WebGLShader
WebGLShaderPrecisionFormat
WebGLSync
WebGLTexture
WebGLTransformFeedback
WebGLUniformLocation
WebGLVertexArrayObject