调整A帧中的屏幕截图

时间:2018-03-22 01:49:46

标签: javascript html aframe

我有一个带有A帧的场景,我使用方法getCanvas来获取屏幕截图并将其发送给PHP。有没有办法调整getCanvas图像大小的大小?因为默认值是4096x2048,我需要它更小。如果我更改源代码中的默认尺寸,则会通过拉伸来严重调整大小。

1 个答案:

答案 0 :(得分:1)

截图组件的架构允许您设置所需的宽度和高度,因此您可以尝试这样的方法 - 首先设置属性,然后调用getCanvas:

https://glitch.com/edit/#!/a-frame-screenshot-size

AFRAME.registerComponent('snap-on-space-key', {
  init: function () {
    const scene = this.el
    document.addEventListener('keydown', (event) => {
      const SPACEKEY = 32
      if (event.which === SPACEKEY) {
        scene.setAttribute('screenshot', {
          width: 1024,
          height: 512
        })
        const canvas = scene.components.screenshot.getCanvas('equirectangular');
        console.log(canvas)
        scene.components.screenshot.capture('equirectangular')
      }
    });
  }
}); 

或者您也可以在场景中设置一次:

<a-scene screenshot="width: 1024; height: 512;">...