Sfoglia il codice sorgente

对SVGPath进行处理。

CrazyIter 5 anni fa
parent
commit
80e6923f0b

+ 3 - 1
TEAMModelOS.Service/Models/PowerPoint/Path.cs

@@ -5,7 +5,9 @@ using System.Text;
 namespace HiTeachCC.Model.PowerPoint
 namespace HiTeachCC.Model.PowerPoint
 {
 {
     public abstract class Path
     public abstract class Path
-    {
+    {   
+        double w { get; set; }
+        double h { get; set; }
         public string Type { get; set; }
         public string Type { get; set; }
     }
     }
     public   class ClosePath :Path
     public   class ClosePath :Path

+ 95 - 0
TEAMModelOS.Service/Models/PowerPoint/Shape.cs

@@ -13,8 +13,103 @@ namespace HiTeachCC.Model.PowerPoint
        
        
         public List<ShapeGuide> ShapeGuides { get; set; }
         public List<ShapeGuide> ShapeGuides { get; set; }
         public List<Path> Paths { get; set; }
         public List<Path> Paths { get; set; }
+         
 
 
     }
     }
+
+    public class Svg { 
+        public string Id { get; set; }
+        public string Width { get; set; }
+        public string Height { get; set; }
+        public string Top { get; set; }
+        public string Left { get; set; }
+        public string Style { get; set; }
+        public List<SvgShape> SvgShape { get; set; }
+        public string Defs { get; set; }
+        public string Transform { get; set; }
+    }
+
+    public abstract class SvgShape {
+        // rect ,circle ,ellipse ,line ,polygon ,polyline ,path
+        public string Type { get; set; }
+        public string Style { get; set; }
+        public string Stroke { get; set; }
+        //描边的不透明度
+       // public string StrokeOpacity { get; set; } = "1";
+        public string StrokeWidth { get; set; }
+        // 虚线类型描边
+        public string StrokeDasharray { get; set; }
+        public string Fill { get; set; }
+        //填充色的不透明度
+      //  public string FillOpacity { get; set; } = "1";
+    }
+    public class Rect : SvgShape
+    { 
+        //矩形左上角的x位置
+        public string X { get; set; }
+        //矩形左上角的y位置
+        public string Y { get; set; }
+        //矩形的宽度
+        public string Width { get; set; }
+        //矩形的高度
+        public string Height { get; set; }
+        // 圆角的x方位的半径
+        public string Rx { get; set; }
+        // 圆角的y方位的半径
+        public string Ry { get; set; }
+    }
+    public class Circle : SvgShape
+    {
+        //圆的半径
+        public string R { get; set; }
+        //圆心的x位置
+        public string Cx { get; set; }
+        //圆心的y位置
+        public string Cy { get; set; }
+    }
+    public class Ellipse : SvgShape
+    {
+        // 椭圆的x方位的半径
+        public string Rx { get; set; }
+        // 椭圆的y方位的半径
+        public string Ry { get; set; }
+
+        //椭圆的x位置
+        public string Cx { get; set; }
+        //椭圆的y位置
+        public string Cy { get; set; }
+    }
+    public class Line : SvgShape
+    {
+        //起点的x位置
+        public string X1 { get; set; }
+        //起点的Y位置
+        public string Y1 { get; set; }
+        //终点的X位置
+        public string X2 { get; set; }
+        //终点的Y位置
+        public string Y2 { get; set; }
+    }
+    public class Polyline : SvgShape
+    {
+        /// <summary>
+        /// 点集数列。每个数字用空白、逗号、终止命令符或者换行符分隔开。每个点必须包含2个数字,一个是x坐标,一个是y坐标。所以点列表 (0,0), (1,1) 和(2,2)可以写成这样:“0 0, 1 1, 2 2”。
+        /// </summary>
+        public string Points { get; set; }
+    }
+    public class Polygon : SvgShape
+    {
+        /// <summary>
+        /// 点集数列。每个数字用空白符、逗号、终止命令或者换行符分隔开。每个点必须包含2个数字,一个是x坐标,一个是y坐标。
+        /// 所以点列表 (0,0), (1,1) 和(2,2)可以写成这样:“0 0, 1 1, 2 2”。路径绘制完后闭合图形,所以最终的直线将从位置(2,2)连接到位置(0,0)。
+        /// </summary>
+        public string Points { get; set; }
+
+    }
+    public class SvgPath : SvgShape
+    {
+        public string D { get; set; }
+    }
     public class ShapeGuide
     public class ShapeGuide
     {
     {
         public string Name { get; set; }
         public string Name { get; set; }

+ 5 - 774
TEAMModelOS.Service/Services/PowerPoint/Implement/ShapeGenerator.cs

@@ -5,6 +5,7 @@ using Microsoft.AspNetCore.Http;
 using System;
 using System;
 using System.Collections.Generic;
 using System.Collections.Generic;
 using System.IO;
 using System.IO;
+using System.Text;
 using System.Threading.Tasks;
 using System.Threading.Tasks;
 using System.Xml;
 using System.Xml;
 using System.Xml.Linq;
 using System.Xml.Linq;
@@ -25,7 +26,7 @@ namespace HiTeachCC.Service.PowerPoint.Implement
     public class ShapeGenerator : IShapeGenerator
     public class ShapeGenerator : IShapeGenerator
     {
     {
 
 
-        delegate string GenShapeDelegate(XmlNode node, string shapType, double w, double h, bool imgFillFlg, bool grndFillFlg, int shpId, string fillColor, Border border);
+      
         private string fileShaCode { get; set; }
         private string fileShaCode { get; set; }
         private bool isDone = false;
         private bool isDone = false;
         private List<object> MsgQueue = new List<object>();
         private List<object> MsgQueue = new List<object>();
@@ -502,12 +503,11 @@ namespace HiTeachCC.Service.PowerPoint.Implement
             var shapeBorder = ShapeHelper.GetBorder(node, true, "shape", slideLayoutClrOvride, warpObj.slideMasterContent, warpObj.themeContent);
             var shapeBorder = ShapeHelper.GetBorder(node, true, "shape", slideLayoutClrOvride, warpObj.slideMasterContent, warpObj.themeContent);
             var headEndNodeAttrs = node.GetTextByPath("p:spPr/a:ln/a:headEnd");
             var headEndNodeAttrs = node.GetTextByPath("p:spPr/a:ln/a:headEnd");
             var tailEndNodeAttrs = node.GetTextByPath("p:spPr/a:ln/a:tailEnd");
             var tailEndNodeAttrs = node.GetTextByPath("p:spPr/a:ln/a:tailEnd");
+            StringBuilder svgPath = new StringBuilder("<svg class='drawing' _id='" + order + id + "' _idx='" + order + idx + "' _type='" + order + type + "' _name='" + order + name+ "'");
+            svgPath.Append(" style='top:"+position.Y+"px;left:"+position.X+ "px;width:"+position.Cx+ "px;height"+position.Cy+"px;'");
             if (shapeType != null || custShapType != null)
             if (shapeType != null || custShapType != null)
             {
             {
 
 
-
-               
-
                 //result += "<svg class='drawing' _id='" + id + "' _idx='" + idx + "' _type='" + type + "' _name='" + name +
                 //result += "<svg class='drawing' _id='" + id + "' _idx='" + idx + "' _type='" + type + "' _name='" + name +
                 //        "' style='" +
                 //        "' style='" +
                 //            getPosition(slideXfrmNode, null, null) +
                 //            getPosition(slideXfrmNode, null, null) +
@@ -576,780 +576,11 @@ namespace HiTeachCC.Service.PowerPoint.Implement
             }
             }
 
 
             if (shapeType != null && custShapType == null) {
             if (shapeType != null && custShapType == null) {
-                result+= GenShapeSvg(node, order, shapeType, isFlipV, position, grndFillFlg, imgFillFlg, Fill, shapeBorder, headEndNodeAttrs, tailEndNodeAttrs);
+                result+= ShapeSvg.GenShapeSvg(node, order, shapeType, isFlipV, position, grndFillFlg, imgFillFlg, Fill, shapeBorder, headEndNodeAttrs, tailEndNodeAttrs);
             }
             }
             return result;
             return result;
         }
         }
 
 
-        private static string GenShapeSvg(XmlNode node, int order, XmlNode shapeType, int isFlipV, Position position, bool grndFillFlg, bool imgFillFlg, Fill Fill, Border shapeBorder, XmlNode headEndNodeAttrs, XmlNode tailEndNodeAttrs)
-        {
-            string shapType = shapeType.Value;
-            double w = position.Cx;
-            double h = position.Cy;
-            GenShapeDelegate genShapeDelegate;
-            string resultSvg="";
-            Border border = new Border
-            {
-                Type = shapeBorder.Type,
-                Width = shapeBorder.Width,
-                Stroke = shapeBorder.Stroke,
-                Color = shapeBorder.Color,
-            };
-            if (string.IsNullOrEmpty(shapeBorder.Color))
-            {
-                border.Color = "FFFFFF";
-            }
-            string fillColor = "#" + Fill.Color;
-            switch (shapType)
-            {
-                case "rect":
-                    genShapeDelegate = ShapeSvg.Rect;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "flowChartProcess":
-                    genShapeDelegate = ShapeSvg.FlowChartProcess;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "flowChartPredefinedProcess":
-                    genShapeDelegate = ShapeSvg.FlowChartInternalStorage;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "flowChartInternalStorage":
-                    genShapeDelegate = ShapeSvg.FlowChartInternalStorage;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "actionButtonBlank":
-                    genShapeDelegate = ShapeSvg.ActionButtonBlank;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "flowChartCollate":
-                    genShapeDelegate = ShapeSvg.FlowChartCollate;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "flowChartDocument":
-                    genShapeDelegate = ShapeSvg.FlowChartDocument;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "flowChartMultidocument":
-                    genShapeDelegate = ShapeSvg.FlowChartMultidocument;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "actionButtonBackPrevious":
-                    genShapeDelegate = ShapeSvg.ActionButtonBackPrevious;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "actionButtonBeginning":
-                    genShapeDelegate = ShapeSvg.ActionButtonBeginning;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "actionButtonDocument":
-                    genShapeDelegate = ShapeSvg.ActionButtonDocument;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "actionButtonEnd":
-                    genShapeDelegate = ShapeSvg.ActionButtonEnd;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "actionButtonForwardNext":
-                    genShapeDelegate = ShapeSvg.ActionButtonForwardNext;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "actionButtonHelp":
-                    genShapeDelegate = ShapeSvg.ActionButtonHelp;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "actionButtonHome":
-                    genShapeDelegate = ShapeSvg.ActionButtonHome;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "actionButtonInformation":
-                    genShapeDelegate = ShapeSvg.ActionButtonInformation;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "actionButtonMovie":
-                    genShapeDelegate = ShapeSvg.ActionButtonMovie;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "actionButtonReturn":
-                    genShapeDelegate = ShapeSvg.ActionButtonReturn;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "actionButtonSound":
-                    genShapeDelegate = ShapeSvg.ActionButtonSound;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "irregularSeal1":
-                    genShapeDelegate = ShapeSvg.IrregularSeal1;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "irregularSeal2":
-                    genShapeDelegate = ShapeSvg.IrregularSeal2;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "flowChartTerminator":
-                    genShapeDelegate = ShapeSvg.FlowChartTerminator;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "flowChartPunchedTape":
-                    genShapeDelegate = ShapeSvg.FlowChartPunchedTape;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "flowChartOnlineStorage":
-                    genShapeDelegate = ShapeSvg.FlowChartOnlineStorage;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "flowChartDisplay":
-                    genShapeDelegate = ShapeSvg.FlowChartDisplay;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "flowChartDelay":
-                    genShapeDelegate = ShapeSvg.FlowChartDelay;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "flowChartMagneticTape":
-                    genShapeDelegate = ShapeSvg.FlowChartMagneticTape;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "ellipse":
-                    genShapeDelegate = ShapeSvg.Ellipse;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "flowChartConnector":
-                    genShapeDelegate = ShapeSvg.FlowChartConnector;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "flowChartSummingJunction":
-                    genShapeDelegate = ShapeSvg.FlowChartSummingJunction;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "flowChartOr":
-                    genShapeDelegate = ShapeSvg.FlowChartOr;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "roundRect":
-                    genShapeDelegate = ShapeSvg.RoundRect;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "round1Rect":
-                    genShapeDelegate = ShapeSvg.Round1Rect;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "round2DiagRect":
-                    genShapeDelegate = ShapeSvg.Round2DiagRect;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "round2SameRect":
-                    genShapeDelegate = ShapeSvg.Round2SameRect;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "snip1Rect":
-                    genShapeDelegate = ShapeSvg.Snip1Rect;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "snip2DiagRect":
-                    genShapeDelegate = ShapeSvg.Snip2DiagRect;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "snip2SameRect":
-                    genShapeDelegate = ShapeSvg.Snip2SameRect;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "flowChartAlternateProcess":
-                    genShapeDelegate = ShapeSvg.FlowChartAlternateProcess;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "flowChartPunchedCard":
-                    genShapeDelegate = ShapeSvg.FlowChartPunchedCard;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "snipRoundRect":
-                    genShapeDelegate = ShapeSvg.SnipRoundRect;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "bentConnector2":
-                    resultSvg = ShapeSvg.BentConnector2(node, shapType, w, h, isFlipV, imgFillFlg, grndFillFlg, order, fillColor, border, headEndNodeAttrs, tailEndNodeAttrs);
-                    break;
-                case "rtTriangle":
-                    genShapeDelegate = ShapeSvg.RtTriangle;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "triangle":
-                    genShapeDelegate = ShapeSvg.Triangle;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "flowChartExtract":
-                    genShapeDelegate = ShapeSvg.FlowChartExtract;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "flowChartMerge":
-                    genShapeDelegate = ShapeSvg.FlowChartMerge;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "diamond":
-                    genShapeDelegate = ShapeSvg.Diamond;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "flowChartDecision":
-                    genShapeDelegate = ShapeSvg.FlowChartDecision;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "flowChartSort":
-                    genShapeDelegate = ShapeSvg.FlowChartSort;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "trapezoid":
-                    genShapeDelegate = ShapeSvg.Trapezoid;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "flowChartManualOperation":
-                    genShapeDelegate = ShapeSvg.FlowChartManualOperation;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "flowChartManualInput":
-                    genShapeDelegate = ShapeSvg.FlowChartManualInput;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "parallelogram":
-                    genShapeDelegate = ShapeSvg.Parallelogram;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "flowChartInputOutput":
-                    genShapeDelegate = ShapeSvg.FlowChartInputOutput;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "pentagon":
-                    genShapeDelegate = ShapeSvg.Pentagon;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "hexagon":
-                    genShapeDelegate = ShapeSvg.Hexagon;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "flowChartPreparation":
-                    genShapeDelegate = ShapeSvg.FlowChartPreparation;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "heptagon":
-                    genShapeDelegate = ShapeSvg.Heptagon;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "octagon":
-                    genShapeDelegate = ShapeSvg.Octagon;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "decagon":
-                    genShapeDelegate = ShapeSvg.Decagon;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "dodecagon":
-                    genShapeDelegate = ShapeSvg.Dodecagon;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "star4":
-                    genShapeDelegate = ShapeSvg.Star4;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "star5":
-                    genShapeDelegate = ShapeSvg.Star5;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "star6":
-                    genShapeDelegate = ShapeSvg.Star6;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "star7":
-                    genShapeDelegate = ShapeSvg.Star7;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "star8":
-                    genShapeDelegate = ShapeSvg.Star8;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "star10":
-                    genShapeDelegate = ShapeSvg.Star10;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "star12":
-                    genShapeDelegate = ShapeSvg.Star12;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "star16":
-                    genShapeDelegate = ShapeSvg.Star16;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "star24":
-                    genShapeDelegate = ShapeSvg.Star24;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "star32":
-                    genShapeDelegate = ShapeSvg.Star32;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "pie":
-                    genShapeDelegate = ShapeSvg.Pie;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "pieWedge":
-                    genShapeDelegate = ShapeSvg.PieWedge;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "arc":
-                    genShapeDelegate = ShapeSvg.Arc;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "chord":
-                    genShapeDelegate = ShapeSvg.Chord;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "frame":
-                    genShapeDelegate = ShapeSvg.Frame;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "donut":
-                    genShapeDelegate = ShapeSvg.Donut;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "noSmoking":
-                    genShapeDelegate = ShapeSvg.NoSmoking;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "halfFrame":
-                    genShapeDelegate = ShapeSvg.HalfFrame;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "blockArc":
-                    genShapeDelegate = ShapeSvg.BlockArc;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "bracePair":
-                    genShapeDelegate = ShapeSvg.BracePair;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "leftBrace":
-                    genShapeDelegate = ShapeSvg.LeftBrace;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "rightBrace":
-                    genShapeDelegate = ShapeSvg.RightBrace;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "bracketPair":
-                    genShapeDelegate = ShapeSvg.BracketPair;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "leftBracket":
-                    genShapeDelegate = ShapeSvg.LeftBracket;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "rightBracket":
-                    genShapeDelegate = ShapeSvg.RightBracket;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "moon":
-                    genShapeDelegate = ShapeSvg.Moon;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "corner":
-                    genShapeDelegate = ShapeSvg.Corner;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "diagStripe":
-                    genShapeDelegate = ShapeSvg.DiagStripe;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "gear6":
-                    genShapeDelegate = ShapeSvg.Gear6;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "gear9":
-                    genShapeDelegate = ShapeSvg.Gear9;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "bentConnector3":
-                    resultSvg = ShapeSvg.BentConnector3(node, shapType, w, h, isFlipV, imgFillFlg, grndFillFlg, order, fillColor, border, headEndNodeAttrs, tailEndNodeAttrs);
-                    break;
-                case "plus":
-                    genShapeDelegate = ShapeSvg.Plus;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "teardrop":
-                    genShapeDelegate = ShapeSvg.Teardrop;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "plaque":
-                    genShapeDelegate = ShapeSvg.Plaque;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "sun":
-                    genShapeDelegate = ShapeSvg.Sun;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "heart":
-                    genShapeDelegate = ShapeSvg.Heart;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "lightningBolt":
-                    genShapeDelegate = ShapeSvg.LightningBolt;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "cube":
-                    genShapeDelegate = ShapeSvg.Cube;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "bevel":
-                    genShapeDelegate = ShapeSvg.Bevel;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "foldedCorner":
-                    genShapeDelegate = ShapeSvg.FoldedCorner;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "cloud":
-                    genShapeDelegate = ShapeSvg.Cloud;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "cloudCallout":
-                    genShapeDelegate = ShapeSvg.CloudCallout;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "smileyFace":
-                    genShapeDelegate = ShapeSvg.SmileyFace;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "verticalScroll":
-                    genShapeDelegate = ShapeSvg.VerticalScroll;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "horizontalScroll":
-                    genShapeDelegate = ShapeSvg.HorizontalScroll;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "wedgeEllipseCallout":
-                    genShapeDelegate = ShapeSvg.WedgeEllipseCallout;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "wedgeRectCallout":
-                    genShapeDelegate = ShapeSvg.WedgeRectCallout;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "wedgeRoundRectCallout":
-                    genShapeDelegate = ShapeSvg.WedgeRoundRectCallout;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "accentBorderCallout1":
-                    genShapeDelegate = ShapeSvg.AccentBorderCallout1;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "accentBorderCallout2":
-                    genShapeDelegate = ShapeSvg.AccentBorderCallout2;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "accentBorderCallout3":
-                    genShapeDelegate = ShapeSvg.AccentBorderCallout3;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "borderCallout1":
-                    genShapeDelegate = ShapeSvg.BorderCallout1;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "borderCallout2":
-                    genShapeDelegate = ShapeSvg.BorderCallout2;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "borderCallout3":
-                    genShapeDelegate = ShapeSvg.BorderCallout3;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "accentCallout1":
-                    genShapeDelegate = ShapeSvg.AccentCallout1;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "accentCallout2":
-                    genShapeDelegate = ShapeSvg.AccentCallout2;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "accentCallout3":
-                    genShapeDelegate = ShapeSvg.AccentCallout3;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "callout1":
-                    genShapeDelegate = ShapeSvg.Callout1;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "callout2":
-                    genShapeDelegate = ShapeSvg.Callout2;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "callout3":
-                    genShapeDelegate = ShapeSvg.Callout3;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "leftRightRibbon":
-                    genShapeDelegate = ShapeSvg.LeftRightRibbon;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "ribbon":
-                    genShapeDelegate = ShapeSvg.Ribbon;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "ribbon2":
-                    genShapeDelegate = ShapeSvg.Ribbon2;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "doubleWave":
-                    genShapeDelegate = ShapeSvg.DoubleWave;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "wave":
-                    genShapeDelegate = ShapeSvg.Wave;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "ellipseRibbon":
-                    genShapeDelegate = ShapeSvg.EllipseRibbon;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "ellipseRibbon2":
-                    genShapeDelegate = ShapeSvg.EllipseRibbon2;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "line":
-                    resultSvg = ShapeSvg.Line(node, shapType, w, h, isFlipV, imgFillFlg, grndFillFlg, order, fillColor, border, headEndNodeAttrs, tailEndNodeAttrs);
-                    break;
-                case "straightConnector1":
-                    resultSvg = ShapeSvg.StraightConnector1(node, shapType, w, h, isFlipV, imgFillFlg, grndFillFlg, order, fillColor, border, headEndNodeAttrs, tailEndNodeAttrs);
-                    break;
-                case "bentConnector4":
-                    resultSvg = ShapeSvg.BentConnector4(node, shapType, w, h, isFlipV, imgFillFlg, grndFillFlg, order, fillColor, border, headEndNodeAttrs, tailEndNodeAttrs);
-                    break;
-                case "bentConnector5":
-                    resultSvg = ShapeSvg.BentConnector5(node, shapType, w, h, isFlipV, imgFillFlg, grndFillFlg, order, fillColor, border, headEndNodeAttrs, tailEndNodeAttrs);
-                    break;
-                case "curvedConnector2":
-                    resultSvg = ShapeSvg.CurvedConnector2(node, shapType, w, h, isFlipV, imgFillFlg, grndFillFlg, order, fillColor, border, headEndNodeAttrs, tailEndNodeAttrs);
-                    break;
-                case "curvedConnector3":
-                    resultSvg = ShapeSvg.CurvedConnector3(node, shapType, w, h, isFlipV, imgFillFlg, grndFillFlg, order, fillColor, border, headEndNodeAttrs, tailEndNodeAttrs);
-                    break;
-                case "curvedConnector4":
-                    resultSvg = ShapeSvg.CurvedConnector4(node, shapType, w, h, isFlipV, imgFillFlg, grndFillFlg, order, fillColor, border, headEndNodeAttrs, tailEndNodeAttrs);
-                    break;
-                case "curvedConnector5":
-                    resultSvg = ShapeSvg.CurvedConnector5(node, shapType, w, h, isFlipV, imgFillFlg, grndFillFlg, order, fillColor, border, headEndNodeAttrs, tailEndNodeAttrs);
-                    break;
-                case "rightArrow":
-                    genShapeDelegate = ShapeSvg.RightArrow;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "leftArrow":
-                    genShapeDelegate = ShapeSvg.LeftArrow;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "downArrow":
-                    genShapeDelegate = ShapeSvg.DownArrow;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "flowChartOffpageConnector":
-                    genShapeDelegate = ShapeSvg.FlowChartOffpageConnector;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "upArrow":
-                    genShapeDelegate = ShapeSvg.UpArrow;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "leftRightArrow":
-                    genShapeDelegate = ShapeSvg.LeftRightArrow;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "upDownArrow":
-                    genShapeDelegate = ShapeSvg.UpDownArrow;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "quadArrow":
-                    genShapeDelegate = ShapeSvg.QuadArrow;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "leftRightUpArrow":
-                    genShapeDelegate = ShapeSvg.LeftRightUpArrow;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "leftUpArrow":
-                    genShapeDelegate = ShapeSvg.LeftUpArrow;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "bentUpArrow":
-                    genShapeDelegate = ShapeSvg.BentUpArrow;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "bentArrow":
-                    genShapeDelegate = ShapeSvg.BentArrow;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "uturnArrow":
-                    genShapeDelegate = ShapeSvg.UturnArrow;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "stripedRightArrow":
-                    genShapeDelegate = ShapeSvg.StripedRightArrow;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "notchedRightArrow":
-                    genShapeDelegate = ShapeSvg.NotchedRightArrow;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "homePlate":
-                    genShapeDelegate = ShapeSvg.HomePlate;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "chevron":
-                    genShapeDelegate = ShapeSvg.Chevron;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "rightArrowCallout":
-                    genShapeDelegate = ShapeSvg.RightArrowCallout;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "downArrowCallout":
-                    genShapeDelegate = ShapeSvg.DownArrowCallout;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "leftArrowCallout":
-                    genShapeDelegate = ShapeSvg.LeftArrowCallout;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "upArrowCallout":
-                    genShapeDelegate = ShapeSvg.UpArrowCallout;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "leftRightArrowCallout":
-                    genShapeDelegate = ShapeSvg.LeftRightArrowCallout;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "quadArrowCallout":
-                    genShapeDelegate = ShapeSvg.QuadArrowCallout;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "curvedDownArrow":
-                    genShapeDelegate = ShapeSvg.CurvedDownArrow;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "curvedLeftArrow":
-                    genShapeDelegate = ShapeSvg.CurvedLeftArrow;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "curvedRightArrow":
-                    genShapeDelegate = ShapeSvg.CurvedRightArrow;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "curvedUpArrow":
-                    genShapeDelegate = ShapeSvg.CurvedUpArrow;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "mathDivide":
-                    genShapeDelegate = ShapeSvg.MathDivide;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "mathEqual":
-                    genShapeDelegate = ShapeSvg.MathEqual;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "mathMinus":
-                    genShapeDelegate = ShapeSvg.MathMinus;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "mathMultiply":
-                    genShapeDelegate = ShapeSvg.MathMultiply;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "mathNotEqual":
-                    genShapeDelegate = ShapeSvg.MathNotEqual;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "mathPlus":
-                    genShapeDelegate = ShapeSvg.MathPlus;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "can":
-                    genShapeDelegate = ShapeSvg.Can;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "flowChartMagneticDisk":
-                    genShapeDelegate = ShapeSvg.FlowChartMagneticDisk;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "flowChartMagneticDrum":
-                    genShapeDelegate = ShapeSvg.FlowChartMagneticDrum;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "swooshArrow":
-                    genShapeDelegate = ShapeSvg.SwooshArrow;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "circularArrow":
-                    genShapeDelegate = ShapeSvg.CircularArrow;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "leftCircularArrow":
-                    genShapeDelegate = ShapeSvg.LeftCircularArrow;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "leftRightCircularArrow":
-                    genShapeDelegate = ShapeSvg.LeftRightCircularArrow;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "chartPlus":
-                    genShapeDelegate = ShapeSvg.ChartPlus;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "chartStar":
-                    genShapeDelegate = ShapeSvg.ChartStar;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "chartX":
-                    genShapeDelegate = ShapeSvg.ChartX;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "cornerTabs":
-                    genShapeDelegate = ShapeSvg.CornerTabs;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "flowChartOfflineStorage":
-                    genShapeDelegate = ShapeSvg.FlowChartOfflineStorage;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "folderCorner":
-                    genShapeDelegate = ShapeSvg.FolderCorner;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "funnel":
-                    genShapeDelegate = ShapeSvg.Funnel;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "lineInv":
-                    genShapeDelegate = ShapeSvg.LineInv;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "nonIsoscelesTrapezoid":
-                    genShapeDelegate = ShapeSvg.NonIsoscelesTrapezoid;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "plaqueTabs":
-                    genShapeDelegate = ShapeSvg.PlaqueTabs;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "squareTabs":
-                    genShapeDelegate = ShapeSvg.SquareTabs;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                case "upDownArrowCallout":
-                    genShapeDelegate = ShapeSvg.UpDownArrowCallout;
-                    resultSvg = genShapeDelegate(node, shapType, w, h, imgFillFlg, grndFillFlg, order, fillColor, border);
-                    break;
-                default:
-                    break;
-            }
-            return resultSvg;
-        }
-
         /// <summary>
         /// <summary>
         /// 幻灯片 背景色填充
         /// 幻灯片 背景色填充
         /// </summary>
         /// </summary>

File diff suppressed because it is too large
+ 1181 - 203
TEAMModelOS.Service/Services/PowerPoint/Implement/ShapeSvg.cs