如何在标准化坐标中存储fabricjs对象

问题描述 投票:0回答:1

我使用fabricjs toJSON 将对象坐标存储到.json 文件中。
然后,我使用 loadFromJSON 从 .json 文件重新加载对象。
可以在更大的画布上创建对象,然后将其恢复到较小的画布中。
目前对象是使用绝对坐标存储的,因此如果恢复到不同大小的画布,对象将在画布上的不同位置渲染。
我正在寻找一种方法来将对象存储在标准化坐标(即从 0,1 开始)中,以便在去标准化后它们将始终渲染在相对于画布的相同位置。
有办法做到这一点吗?

谢谢

fabricjs
1个回答
0
投票

缩放对象坐标为我解决了问题(如此链接中的建议)。
绝对坐标与画布高度和重量一起存储。
从 .json 文件加载时,会计算比率并用于缩放坐标以及其他属性,例如自由绘制笔的粗细。

© www.soinside.com 2019 - 2024. All rights reserved.