我正在使用CustomPainter制作一个屏幕,用户可以用手指或手写笔绘画。到目前为止还不是火箭科学。
画线存储为
List<MapEntry<Path, Paint>>
因为我可以导出此“图形”和.png,但是我想存储“路径”和“绘画”,以便稍后将图形加载回画布中以进一步进行绘制。
我的想法是,我可以将对象转换为一种字节数组,并将它们存储在DB或文件中,但无法解决问题。
我也不能用它制作一个json。
是否可以在Flutter中存储此类对象,还是应该在绘制和重建路径时存储使用过的点?
预先感谢
答案 0 :(得分:1)
由于当时我还没有找到解决方案,所以我决定自己实现。
我克隆了Painter2 lib并修改了其代码以添加以下功能:
可以在这里找到lib https://github.com/fellow7000/painter2 我还没有对此进行后续处理,因此向原始库提出了池请求。
因此,现在基本上您具有可以读取和写入的MyPath属性。您唯一需要的是以某种方式将其存储在数据库中。我选择将其在需要时来回转换为JSON。
免责声明:因为我已经做了半年多了,所以可能缺少一些细节,但是该库正在运行,因为我仍在项目中使用它。出于安全原因,请下载或克隆它,因为我无法保证,它将永远存在:)