代码之家  ›  专栏  ›  技术社区  ›  Xeoncross

如何将ImageData写入HTML5画布上下文?

  •  -2
  • Xeoncross  · 技术社区  · 6 年前

    我能产生一个新的 ImageData 对象,但无法将其渲染到画布上下文。出于某种原因,canvas 2d上下文不喜欢ImageData对象 它创造了 .

    var canvas = document.getElementById('canvas');
    var ctx = canvas.getContext('2d');
    var width = 50;
    var height = 50;
    
    
    var ci = ctx.createImageData(width,height); // ImageData { width: ..., height: ..., data: Uint8ClampedArray(10000) }
    
    // Draw on ci ImageData object...
    
    ctx.drawImage(ci, 0, 0, width, height);
    

    TypeError: Argument 1 of CanvasRenderingContext2D.drawImage could not be converted to any of: HTMLImageElement, SVGImageElement, HTMLCanvasElement, HTMLVideoElement, ImageBitmap.
    

    你怎么写一本书 图像数据 反对画布?

    1 回复  |  直到 6 年前
        1
  •  2
  •   Xeoncross    6 年前

    写一篇文章 ImageData 对象返回画布,必须使用 context.putImageData() method

    var ci = ctx.createImageData(width,height);
    ctx.putImageData(ci, 0, 0);