From bd6c8ad223b2e4e7360e15aa33230d6edac9d222 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=89=BE=E7=AB=B9?= Date: Sun, 12 Feb 2023 07:25:35 +0000 Subject: [PATCH] update README.md. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: 艾竹 --- README.md | 6 ++++++ flowcharteditor.png | Bin 0 -> 16754 bytes 2 files changed, 6 insertions(+) create mode 100644 flowcharteditor.png diff --git a/README.md b/README.md index b3a3e91..3284268 100644 --- a/README.md +++ b/README.md @@ -157,6 +157,12 @@ nuget地址:![输入图片说明](nuget.png) ![输入图片说明](AIStudio.Wpf.DiagramDesigner.Demo/22.gif) - 16 Editor - - 16.1 FlowchartEditor 工作流封装控件 +采用兼容主流的diagram的序列化格式 + +![输入图片说明](flowcharteditor.png) +`{"Nodes":[{"Kind":1,"UserIds":null,"RoleIds":null,"ActType":null,"Id":"e0f2c29c-2c89-4c0c-857e-35eb0b121d7e","ParentId":null,"Name":null,"Color":"#1890ff","Label":"开始","Width":100.0,"Height":80.0,"X":12.5,"Y":147.5,"Type":"FlowchartNode","ZIndex":0,"PortAlignmentList":["Top","Bottom","Left","Right","Top","Bottom","Left","Right"]},{"Kind":3,"UserIds":[],"RoleIds":[],"ActType":null,"Id":"716f64ec-bcdb-438c-9748-9546abf990cc","ParentId":null,"Name":null,"Color":"#1890ff","Label":"节点1","Width":100.0,"Height":80.0,"X":137.5,"Y":147.5,"Type":"FlowchartNode","ZIndex":2,"PortAlignmentList":["Top","Bottom","Left","Right","Top","Bottom","Left","Right"]},{"Kind":4,"UserIds":null,"RoleIds":null,"ActType":null,"Id":"3cd6c332-6b5b-44ef-96c4-c7aef66fd5dd","ParentId":null,"Name":null,"Color":"#1890ff","Label":"条件节点","Width":100.0,"Height":80.0,"X":262.5,"Y":147.5,"Type":"FlowchartNode","ZIndex":3,"PortAlignmentList":["Top","Bottom","Left","Right","Top","Bottom","Left","Right"]},{"Kind":3,"UserIds":[],"RoleIds":[],"ActType":null,"Id":"7d953234-ddff-4701-a52a-bf6460ffa7b9","ParentId":null,"Name":null,"Color":"#1890ff","Label":"节点2","Width":100.0,"Height":80.0,"X":387.5,"Y":22.5,"Type":"FlowchartNode","ZIndex":6,"PortAlignmentList":["Top","Bottom","Left","Right","Top","Bottom","Left","Right"]},{"Kind":3,"UserIds":[],"RoleIds":[],"ActType":null,"Id":"7dfd4102-2751-42c7-a386-adcfcca27ede","ParentId":null,"Name":null,"Color":"#1890ff","Label":"节点3","Width":100.0,"Height":80.0,"X":387.5,"Y":272.5,"Type":"FlowchartNode","ZIndex":7,"PortAlignmentList":["Top","Bottom","Left","Right","Top","Bottom","Left","Right"]},{"Kind":2,"UserIds":null,"RoleIds":null,"ActType":null,"Id":"ad57e53f-8860-4212-9afb-f67e14eecbc8","ParentId":null,"Name":null,"Color":"#1890ff","Label":"结束","Width":100.0,"Height":80.0,"X":512.5,"Y":147.5,"Type":"FlowchartNode","ZIndex":10,"PortAlignmentList":["Top","Bottom","Left","Right","Top","Bottom","Left","Right"]}],"Links":[{"Id":"65f6432f-2084-462d-93d8-a6b3ff889182","Color":"#FF808080","SelectedColor":"#FF000000","Width":2.0,"Label":null,"SourceId":"e0f2c29c-2c89-4c0c-857e-35eb0b121d7e","TargetId":"716f64ec-bcdb-438c-9748-9546abf990cc","SourcePortAlignment":"Right","TargetPortAlignment":"Left","Type":"DiagramLink","Router":null,"PathGenerator":null,"SourceMarkerPath":null,"SourceMarkerWidth":null,"TargetMarkerPath":null,"TargetMarkerWidth":null},{"Id":"7d1dcf2d-ee69-4c24-84ff-3a99b6555692","Color":"#FF808080","SelectedColor":"#FF000000","Width":2.0,"Label":null,"SourceId":"716f64ec-bcdb-438c-9748-9546abf990cc","TargetId":"3cd6c332-6b5b-44ef-96c4-c7aef66fd5dd","SourcePortAlignment":"Right","TargetPortAlignment":"Left","Type":"DiagramLink","Router":null,"PathGenerator":null,"SourceMarkerPath":null,"SourceMarkerWidth":null,"TargetMarkerPath":null,"TargetMarkerWidth":null},{"Id":"cd18c02f-0cdb-4eb5-9793-b9db87eeea09","Color":"#FF808080","SelectedColor":"#FF000000","Width":2.0,"Label":"条件1","SourceId":"3cd6c332-6b5b-44ef-96c4-c7aef66fd5dd","TargetId":"7d953234-ddff-4701-a52a-bf6460ffa7b9","SourcePortAlignment":"Top","TargetPortAlignment":"Left","Type":"DiagramLink","Router":null,"PathGenerator":null,"SourceMarkerPath":null,"SourceMarkerWidth":null,"TargetMarkerPath":null,"TargetMarkerWidth":null},{"Id":"69bbb083-8eb4-403b-937a-b0f0d3c80eb0","Color":"#FF808080","SelectedColor":"#FF000000","Width":2.0,"Label":"条件2","SourceId":"3cd6c332-6b5b-44ef-96c4-c7aef66fd5dd","TargetId":"7dfd4102-2751-42c7-a386-adcfcca27ede","SourcePortAlignment":"Bottom","TargetPortAlignment":"Left","Type":"DiagramLink","Router":null,"PathGenerator":null,"SourceMarkerPath":null,"SourceMarkerWidth":null,"TargetMarkerPath":null,"TargetMarkerWidth":null},{"Id":"d640c547-5ba8-428c-8d65-74874b1d28bd","Color":"#FF808080","SelectedColor":"#FF000000","Width":2.0,"Label":null,"SourceId":"7d953234-ddff-4701-a52a-bf6460ffa7b9","TargetId":"ad57e53f-8860-4212-9afb-f67e14eecbc8","SourcePortAlignment":"Right","TargetPortAlignment":"Top","Type":"DiagramLink","Router":null,"PathGenerator":null,"SourceMarkerPath":null,"SourceMarkerWidth":null,"TargetMarkerPath":null,"TargetMarkerWidth":null},{"Id":"74ad5635-c96d-42e8-9c0a-42c613c66b7a","Color":"#FF808080","SelectedColor":"#FF000000","Width":2.0,"Label":null,"SourceId":"7dfd4102-2751-42c7-a386-adcfcca27ede","TargetId":"ad57e53f-8860-4212-9afb-f67e14eecbc8","SourcePortAlignment":"Right","TargetPortAlignment":"Bottom","Type":"DiagramLink","Router":null,"PathGenerator":null,"SourceMarkerPath":null,"SourceMarkerWidth":null,"TargetMarkerPath":null,"TargetMarkerWidth":null}]}` + + 近期会持续更新,欢迎大家光临。 最后上一个动画流程图。 diff --git a/flowcharteditor.png b/flowcharteditor.png new file mode 100644 index 0000000000000000000000000000000000000000..1a6f08efdc552a583d7bf83f0e99ca658ec594fc GIT binary patch literal 16754 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 G2mcF#D8pd@ literal 0 HcmV?d00001