getScreenShot函数在v6中返回错误

时间:2018-08-08 08:15:33

标签: javascript autodesk-forge

在查看器v6中执行Viewer.getScreenShot(w, h, cb)函数时,出现以下错误。在v5中可以正常工作。

有人知道如何解决这个问题吗?

谢谢

  

viewer3D.min.js?v=6.0.*:63未捕获DOMException:无法构造ImageData:输入数据长度不是(4 * width)的倍数。
  在e (https://developer.api.autodesk.com/modelderivative/v2/viewers/viewer3D.min.js?v=6.0.*:63:24318)
  在e.getScreenShot (https://developer.api.autodesk.com/modelderivative/v2/viewers/viewer3D.min.js?v=6.0.*:63:24936)
  在a.h.getScreenShot (https://developer.api.autodesk.com/modelderivative/v2/viewers/viewer3D.min.js?v=6.0.*:57:21319)

2 个答案:

答案 0 :(得分:0)

好的,我知道了问题所在。在v5中,width和height被接受为int或float,但是在v6中,仅接受int。计算的尺寸应通过round()函数解决。

答案 1 :(得分:0)

如错误所指出,ImageData的输入数据长度应为(4 * width)的倍数,因为您输入w和h的浮点值,所以数组大小可能不正确,请检查此https://stackoverflow.com/questions/38556730/imagedata-byte-length-is-not-a-multiple-of-4-width 有关详细信息。