如何存储画笔描边信息

时间:2013-04-23 03:50:35

标签: database-design data-structures html5-canvas

我将开发一个演示应用程序来刺激MS Paint但在网络上运行(HTML5)。目前我已经实现了画笔功能(与MS Paint完全相同),但我想将每个画笔笔划存储在数据库中。然而,我没有找到存储画笔描边的数据结构。你们认为连续点(x,y)的数组可以保持画笔描边信息吗?

class point
{
    float x, y;
}

class brush 
{
   List<point> data;
}

最好的问候。

1 个答案:

答案 0 :(得分:0)

是的,保存积分是一种很好的方法。

请记住,每行上的第一个点是context.moveTo。然后,您可以使用context.lineTo轻松重播剩余的笔划。

我假设您在每个画笔笔划上也需要颜色和宽度信息。

这是一个起始架构:

table: Points
pointId int [primary key]
strokeID int, [key to table Strokes]
pointX int,
pointY int

table: Strokes
strokeId int, [primary key]
fillStyle varchar,
strokeStyle varchar,
lineWidth int