SVG未出现在屏幕截图中

时间:2019-04-15 10:59:08

标签: autodesk-forge autodesk-viewer

我在这里遵循了该教程:https://forge.autodesk.com/blog/create-pushpin-markup-svg

我已经成功地将svg图像实现为查看器的一部分,将它们绑定到查看器事件的重绘等。但是,然后我使用了查看器的屏幕快照功能。这样就得到了没有svg标记的屏幕截图。

但是标记之类的标记(如在其上绘制的线)在添加到叠加层(叠加场景)时仍然有效。

是否可以将svg图像添加到查看器叠加层中,以便可以将其导出到屏幕截图中?或者还有另一种方法可以实现此目的?

1 个答案:

答案 0 :(得分:0)

一种可行的解决方法是在捕获后使用canvg library将svg绘制到镜头上(通过诸如html2canvas等的屏幕到画布渲染库):

html2canvas(viewer.canvas).then(canvas => {
    canvas.getContext('2d').drawSvg(SVG_XML_OR_PATH) //draw the markups here with the extension enabled by "canvg"
    canvas.toDataURL/toBlob ... //persist your capture

});