最近我的公司交给我一个基于网络的图形编辑器项目来处理,编辑器内的内容可以移动、旋转、调整大小、 mask 、更改字体...等
到目前为止,我能够处理大部分客户端功能。然而,我坚持使用那些导出 PDF/PNG 功能,这让我很头疼。我一直在研究像JSPDF和HTML2Canvas这样的插件,但这些都不能解决我的问题(例如HTML2Canvas不支持clip-path css属性)。
我想知道这些受欢迎的产品怎么样 Canva或Piktochart 能够开发出如此惊人的导出功能。因此,我想向有构建网页编辑器经验的开发人员寻求一些建议:
- 仅使用前端技术是否可以开发导出功能?
- 开发导出功能需要哪些知识。 [ Blob ? SVG?]
- 后端对此功能有什么帮助吗?
P.S:我只有 2 年的前端开发经验和一点点后端知识。 (是的,我一个人做这个项目。)
非常感谢!
最佳答案
您可以使用一些 JavaScript 库。您不需要后端。
html2canvas - 您可以为任何 HTML 内容创建 HTML Canvas。然后您可以从 Canvas 创建 PNG/JPG 图像。
pdf.js - 您可以通过创建新的空白页面来手动创建 PDF,并开始在其上绘图。您还可以在 PDF 上绘制图像或 Canvas 。
更多信息:
- Canvas 元素
toDataURL
- https://developer.mozilla.org/en-US/docs/Web/API/HTMLCanvasElement/toDataURL - 从数据 URL 触发下载 - http://danml.com/download.html
关于javascript - Web 编辑器的 PDF/PNG 导出功能,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48261753/