将 Canvas 从 React Konva 导出到 SVG & PDF?



目前,我只能使用jpeg&png导出,如:

stageRef.current?.getStage().toDataURL({ mimeType: 'image/jpeg', quality: 1 })
stageRef.current?.getStage().toDataURL({ mimeType: 'image/png', quality: 1 })

我想像Figma那样将Canvas导出到svgpdf

我发现了导致MIME_types的数据URI。在那里,他们写了application/pdf&image/svg+xml应该工作,但当我这样做时,我仍然会得到.png图像。

有什么方法可以实现CCD_ 8&来自Konva Canvas的.pdf

stage.toDataURL()正在使用canvas.toDataURL((API进行导出。大多数浏览器只支持jpgpng格式。

对于SVG或PDF导出,您必须编写自己的实现。

对于PDF导出,您可以使用外部库通过stage.toDataURL()方法生成带有图像的PDF文件。作为一个演示,看看Saving Konva阶段到PDF演示。

Konva库中没有用于SVG导出的内置方法。您必须编写自己的实现。如果使用RectCircleText等基本形状而不使用任何花哨的过滤器,那么编写这样的转换应该不难,因为SVG规范中也有类似的标签。

toDataUrl()导出位图,而不是矢量。

您可以使用canvas2svg包生成svg。

您可以将层的上下文设置为c2s实例,对其进行渲染,并将层的引用重置为以前的引用,如图所示。

最新更新