代码之家  ›  专栏  ›  技术社区  ›  Stephen Reynolds

角度合并少量图像

  •  1
  • Stephen Reynolds  · 技术社区  · 7 年前

    是否有任何选项可以将几个图像以角度合并在一起。我看到了一个HTML 5编码的,但我无法让它工作

    <canvas id="canvas"></canvas>
    <script type="text/javascript">
      var canvas = document.getElementById('canvas');
      var context = canvas.getContext('2d');
      Image img1 = new Image();
      Image img2 = new Image();
    
      img1.onload = function () {
        canvas.width = img1.width;
        canvas.height = img1.height;
        img2.src = 'imgfile2.png';
      };
      img2.onload = function () {
        context.globalAlpha = 1.0;
        context.drawImage(img1, 0, 0);
        context.globalAlpha = 0.5; //Remove if pngs have alpha
        context.drawImage(img2, 0, 0);
      };
    
      img1.src = 'imgfile1.png';
    
    </script>
    
    1 回复  |  直到 7 年前
        1
  •  1
  •   user4676340 user4676340    7 年前

    简单地用它在角度组件中创建一个函数,然后使用局部变量来获得画布。

    @ViewChild('canvas') canvas: ElementRef;
    
    mergeImages() {
      var canvas: HTMLCanvasElement = this.canvas.nativeElement;
      var context = canvas.getContext('2d');
    
      let img1 = new Image();
      let img2 = new Image();
    
      img1.onload = function() {
        canvas.width = img1.width;
        canvas.height = img1.height;
        img2.src = 'imgfile2.png';
      };
      img2.onload = function() {
        context.globalAlpha = 1.0;
        context.drawImage(img1, 0, 0);
        context.globalAlpha = 0.5; //Remove if pngs have alpha
        context.drawImage(img2, 0, 0);
      };        
    
      img1.src = 'imgfile1.png';
    }
    

    在HTML中,记住声明局部变量

    <canvas #canvas></canvas>