在查看器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)
答案 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 有关详细信息。