CC4J / fabric-drawing-board

use fabric to achievement drawing board and support free drawing, line, rect,cirlce,eraser,text,pan,scale,undo,redo,clear, save(使用fabric实现画板功能,支持画笔,绘制直线,矩形,圆形,文字,移动缩放画布,撤销重做,清屏与保存功能)
36 stars 10 forks source link

哥们,你有用 fabric 实现复杂图形和交互吗? #3

Closed dahui4dev closed 3 years ago

dahui4dev commented 3 years ago

如题:复杂图形,比如矩形中带文字,双击编辑文字,等等功能。

CC4J commented 3 years ago

如题:复杂图形,比如矩形中带文字,双击编辑文字,等等功能。

你可以先画一个矩形,然后在矩形中添加文字。至于双击编辑文字。fabric可以给图形添加点击事件,在点击事件的回调了你可以判断当前图形是否为文字,如果是文字,让文字进入编辑状态即可。如果你想让用户直接绘制一个带文字的图形,也可以,直接在绘制矩形之后通过代码自动在矩形内绘制一段文字即可。

dahui4dev commented 3 years ago

能说的再细节一点吗?比如 图形里面怎么加文字? 因为 fabric Rect 类是不带 文字属性的,想加的话,只能 Rect + Textbox 搞一个 Group ,但是这种交互代码实现很不方便。

CC4J commented 3 years ago

能说的再细节一点吗?比如 图形里面怎么加文字? 因为 fabric Rect 类是不带 文字属性的,想加的话,只能 Rect + Textbox 搞一个 Group ,但是这种交互代码实现很不方便。

就是你想的那样,没有更方便的实现形式。你只能自行进行封装。