Javascript 以pdf格式下载HTML5画布
我正在使用fabricjs开发图形编辑器。我想下载整个画布或(如果可能的话)给定坐标的pdf格式(但不是嵌入png或jpg)。下载的文件应该由Adobe Illustrator或Corel打开,并且应该是可编辑的Javascript 以pdf格式下载HTML5画布,javascript,canvas,html5-canvas,pdf-generation,fabricjs,Javascript,Canvas,Html5 Canvas,Pdf Generation,Fabricjs,我正在使用fabricjs开发图形编辑器。我想下载整个画布或(如果可能的话)给定坐标的pdf格式(但不是嵌入png或jpg)。下载的文件应该由Adobe Illustrator或Corel打开,并且应该是可编辑的 提前感谢。最好的选择可能是,但是HTML5 Canvas生成的图像不是矢量图形,因此需要一些工作来翻译。Canvas和pdf之间没有直接翻译,浏览器中不基于图像。 您可以为每个结构子类使用和创建自定义导出方法,这些子类考虑了绘图方法 您必须考虑到canvas和fabricjs提供的自由
提前感谢。最好的选择可能是,但是
HTML5 Canvas
生成的图像不是矢量图形,因此需要一些工作来翻译。Canvas和pdf之间没有直接翻译,浏览器中不基于图像。
您可以为每个结构子类使用和创建自定义导出方法,这些子类考虑了绘图方法
您必须考虑到canvas和fabricjs提供的自由度与pdf/eps不同
如果不使用光栅化,某些特征可能无法转换。
我能想到的第一个是带有自定义fabricjs样式的自定义字体
不是一个简单的解决方案,有人可以给你一段代码让你继续前进
PDFkit和pdf通常有一个画布的转换方法,类似于HTML5Canvas,可以完全像HTML5Canvas那样绘制路径
首先要做的是尝试将fabric转换方法和路径命令模拟为jsdpf代码
PDFkit提供了doc.transform
,您可以将fabric.Object.calcTransformMatrix()的结果传递给它
我建议您先尝试使用path和rect,然后在熟悉代码后再转到Text
图像应该是直截了当的
在我看来,jsPdf似乎没有公开必要的API来实现这一点这是一件非常复杂的事情。您可以轻松地为画布拍照并将其放入pdf文件中。但是为了以后能够在Illustrator中继续编辑peoject,您将不得不进行大量的艰苦翻译。使用javascript似乎很难做到这一点。对服务器端编码有什么想法吗?例如,是否有任何php库或类似的东西?我正在使用html2canvas和jsPdf,它在html2canvas V0.5.0-beta4和jsPdf V1.3.0中运行良好。更新html2canvas V1.0.0-alpha.9和jsPDF V1.3.5后,它不工作。@Vignesh控制台中有错误消息吗?或者任何库的文档都可以解释这一点?它不会在控制台中抛出任何错误。尝试在Index.html中更改html2canvas:0.5.0-beta4和jspdf 1.3.0的版本。它工作正常。您需要新版本吗?pluncker适合我。也许是浏览器的问题?我在Firefox Quantum上