SpreadJS 文档
SpreadJS 文档 / 开发者指南 / 特性 / 管理数据可视化和对象 / 形状 / 自定义形状
在本主题中
    自定义形状
    在本主题中

    SpreadJS支持根据特定要求在工作表中添加自定义形状。 您可以自定义形状模型以绘制您选择的形状,就像将图形绘制到画布上一样。

    下面共享的截图描述了添加到工作表中的自定义形状。

    示例代码

    本示例说明如何在工作表中添加自定义形状。

    JavaScript
    复制代码
    // Adding a custom shape to the worksheet
    window.onload = function ()
    {
       var spread = new GC.Spread.Sheets.Workbook(document.getElementById("ss"));
       var sheet = spread.getActiveSheet();
       // Define a model to create custom shape
       var model =
        {
           left: 50,
           top: 50,
           width: 300,
           height: 300,
           options:
           {
                fill:
                  {
                    type: 1,
                    color: "green",
                    transparency: 0.5,
                   },                    
                 stroke:
                   {
                     type: 1, // solid fill (now only support solid fill)
                     color: "blue",
                     width: 3                   
                    }                    
              },
                    path: [
                     [
                            ["M", 4, 1], // M: move to (x, y)
                            ["L", 104, 1], // L: line to (x, y)
                            ["L", 4, 94],
                            ["L", 104, 94],
                            ["L", 4, 1],
                            ["M", 4, 47],
                            ["L", 104, 47],
                            ["Z"]
                      ]
                    ]
                };
        //Add defined custom shape to sheet
        sheet.shapes.add('name', model);          
    } 
    

     

    注意: 集成自定义形状时,SpreadJS不支持以下方案:

    • 到目前为止,尚不支持将自定义形状导入和导出到excel文件。
    • 形状文本仅支持:水平方向,水平和垂直文本对齐,纯色填充,字体(名称和大小)和边距等。
    • 到目前为止,还不完全支持翻转形状(水平/垂直或这两者)。                       
    • 形状类型为HitTest的功能:形状边界超出限制的标注不完全受支持。 因此,用户无法通过单击超出形状限制的零件来选择形状。