原笔迹手写保存生成 svg 数据,并将 svg 保存为 pdf 格式

有个朋友提了一个需求,将签名数据生成 svg 数据,并保存为 pdf,传送到后台。

初步分析了一下,难点在于

  1. svg 的生成
  2. pdf 的生成。

首先对 svg、pdf 的文件格式进入了初步的了解。尝试将笔迹生成 svg 格式,然后再将 svg 转化为 pdf graphic command,再将这些 command 转化为 pdf 文件。

相对之前对 svg 有所涉及,pdf 方面的入门门槛更高一点。好在并不需要实现很复杂的功能。首先通过 mediabox 定义页面的大小,然后通过对颜色配置的学习,实现了对笔迹颜色的支持,最重要的是,用过对 curv path 的格式规范的学习,实现的笔迹笔锋和压感的效果。

最后,让我们来看一下效果(关键是 svg 和 pdf 是矢量图,放大不失真):

原笔迹控件原始效果:

生成的 svg 数据的效果:

继续阅读原笔迹手写保存生成 svg 数据,并将 svg 保存为 pdf 格式