javascript - 将 Fabric 项目从 1.6.3 升级到 3.6.x

标签 javascript version fabricjs upgrade

我在我的一个 Canvas 项目中使用 Fabric.js 已经很长时间了。目前,我的项目是基于 Fabric 1.6.3 版本构建的。

现在,由于动画的局限性,该问题在最近的版本中已得到解决。我想升级到 3.6.x 但在这样做的过程中,我意识到它有大量的折旧和升级。我的项目目前有大约 20k 行代码。 手动执行此操作当然不是一个可行的选择。

谁能提出更好的解决方案?可能是一个迁移脚本或类似的东西来拯救我自己。

最佳答案

据我所知,没有升级/迁移脚本可以自动执行让代码在最新版本的 Fabric.js 下运行的过程。不过,为了帮助您入门,这里有一些提示。

从 v1.6.3 升级到 v2.x

Fabric.js 版本 v2.x 可能是主要版本中最大的重大更改。除了删除的几种方法之外,图像高度和宽度的处理方式也发生了重大变化,以适应新的图像裁剪功能。以下指南概述了这些更改,还包括一些示例代码以帮助反序列化 v2.0 之前的 JSON 字符串。

从 v2.4.0 开始,clipPath添加了支持,允许您使用另一个 Fabric 对象来剪辑对象或 Canvas 。 clipTo以前的方法现在已标记为已弃用,因此如果您的项目使用 clipTo你真的应该开始进行这种转变。请参阅此由 4 部分组成的指南,以更好地了解新功能。

从 v2.x 升级到 v3.x

Fabric.js v3.x 的重大更改少于 v2.x。对 Node 4 和 6 的支持已被删除,对象缓存现在在某些情况下是必需的而不是可选的,但这次升级更多的是关于新功能而不是重大变化。

参见http://fabricjs.com/changelog了解每个版本的详细更改列表。

从 v3.x 升级到 v4.x

我也包含了这一部分,因为虽然此时 v4.x 分支仍处于测试阶段,但有相当多的重大更改,其中主要涉及删除旧方法。如果您现在进行这些更改,您仍然可以在 v3.x 分支上运行您的项目,直到 v4.x 离开测试版。

一个重大变化是 clipTo方法终于被删除了,所以如果你还在使用clipTo您将需要转向使用 clipPath

v4.x 中最大的改进是新的自定义控制界面。通过这个系统,您将能够自定义每个控件的功能,添加图标,甚至向您的对象添加新控件。请参阅以下演示以获取有关新系统的帮助。

参见https://github.com/fabricjs/fabric.js/releases查看 v4.x 分支中当前更改和删除方法的列表。

玩得开心!

关于javascript - 将 Fabric 项目从 1.6.3 升级到 3.6.x,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61061911/

相关文章:

javascript - 使用 Raphael.js 转换为绑定(bind)框

javascript - 如何使用 Javascript 执行函数并跟踪页面退出时的出站链接?

javascript - Backbone 后退按钮滚动问题

c++ - 如何检查操作系统至少是 Windows XP SP3?

java - 正则表达式提取软件版本

ios - NSFoundationVersionNumber 和 iOS 版本

javascript - 无法使用 Fabric JS 取消分组

javascript - 如何提高 Fabric.Image.fromURL 的性能

javascript - Firebase 请求行范围

javascript - 将 "bleed area"添加到 2 个 Canvas ?