06.PPTX解析说明文档(Shap属性说明)
黄贺彬 módosította ezt az oldalt ekkor: 3 éve

本文档表述形状及任意曲线,任意多边形的属性进行说明。

  • 元素的type=Sp,且具体元素的图形外观由公共属性style确定(04文档已作说明),
  • shapeType为形状,在OpenXMLSDK 的DocumentFormat.OpenXml.Drawing.ShapeTypeValues枚举类型187种类型中除去连接线部分+自定义custom
  • 每种图形的可变化参数已经在处理为Svg时计算并生成。
{
    >>>update,标记物件是否可以放大缩小
    "zoom":true/false,
    "shapeType": "rect",//187种类型中除去连接线部分+自定义custom
    "textBody": {// >>>>update,将paragraph变为textBody.paragraph,增加文本域textBody的样式描述
        "anchor": "Center",//垂直布局 Top 0,Center 1 , Bootom 2
        "anchorCtr": false,// 水平布局 水平居中anchorCt
        "rtlCol": false,//书写方向 false 从左到右书写,true从右到左
        "wrap": "None",//square 不溢出, none 溢出
        //"Horizontal". 横向水平排版 默认,"Vertical". 顺时针旋转90 ,多一行则向左前进,"WordArtVertical". 堆积从左到右
        //"WordArtLeftToRight".堆积从右到左,  "EastAsianVetical". 垂直90度书写  ,"MongolianVertical". 垂直书写,从左到右
        /// "Vertical270". 顺时针旋转270,多一行则向右前进
        ///     |------
        ///     |---1
        ///     |---2
        ///     |---3
        ///     》》》》》
        ///     |
        ///     |123
        ///     ||||
        ///     ||||
        ///     -------
        "vert": "Horizontal",
        "rot": 0.0,//文本框旋转
        //autoFit 大于 wrap设定 ,true 每个形状的文本都停留在该形状的范围内,flase 此元素指定文本主体内的文本不应自动适合于边框。
        "autoFit": true,
        "top": 3.6,//文本上边框距离 类似css padding-top 单位像素
        "bottom": 3.6,//文本下边框距离 类似css padding-bottom 单位像素
        "left": 7.2,//文本左边框距离 类似css padding-left 单位像素
        "right": 7.2,//文右上边框距离 类似css padding-right 单位像素
        //文本行之间的垂直间距可以按百分比量缩放。值为100%将使行距减小100%,而值为1%将使行距减小百分之一。默认0
        "lnSpRn": 0.0
        "paragraph": [//段落
        {
                "style": {//段落样式
                    "indent": 0.0,//>>>>update缩进
                    "vert": "Top",//段落在形状的 上中下位置  Top,Center,Bottom
                     //段落在形状左中右Left,Center,Right,Justified,JustifiedLow,Distributed,ThaiDistributed
                    "hori": "Right",
                    "lnSpace": {// >>>>update段落间距
                        "type": "pct",// pct,倍数距离,默认单倍行距, pts 固定值间距,单位像素,px
                        "val": 1.0//当type为pct为 倍数间距,当type=pts,为固定间距pt
                    },
                    "bfSpace": {// >>>>update段前间距
                        "type": "pts",// pct,倍数距离,默认单倍行距, pts 固定值间距,单位像素,px
                        "val": 0.0//当type为pct为 倍数间距,当type=pts,为固定间距
                    },
                    "afSpace": {// >>>>update段后间距
                        "type": "pts",// pct,倍数距离,默认单倍行距, pts 固定值间距,单位像素,px
                        "val": 0.0//当type为pct为 倍数间距,当type=pts,为固定间距
                    }
                },
                "buChar": {// 项目大纲符号
                    "type": "Picture",//类型,Picture图片,或Character字符,增加序列项目符号
                    "left": 27.0,//缩进
                    "buchar": "/ppt/media/image11.png",//图片的Stores索引,或者字符·等
                    "color": null,//如果是颜色
                    "typeface": "Calibri",//字体
                    "size": 18.0,//字体符号
                },
                "texts": [//文本域
                    {
                        "type":"text",//默认文本text,当为attach 则是数据来源为Hiteach,文本中可包含图片,音频,视频等
                        "content": "这是文本 ",//文本内容
                        "style": {//文本样式
                            //>>>>update
                            "fill":{}//null 则没有填充,字体填充,参照公共属性fill,如果有则style.color 自动以fill填充颜色为准。
                            "border":{}//>>>>update字体描边样式,可为null,参照公共属性border
                            "color": "#7030A0",//字体颜色
                            "size": 18.0,//字号
                            "family": "Calibri",//字体
                            "underline": "none",//是否下划线SingleStrike,NoStrike,DoubleStrike,待优化
                            "align": "",//位置
                            "spacing": 0,//>>>>updateTab键键入的长度
                            "bold": false,//是否加粗
                            "italic": false,//是否斜体
                            "effect":{}//>>>>update可选,null,不为空参照公共属性,阴影,发光,映像,边缘柔化等效果
                        },
                        "links": 
                        [
                            {
                                //链接类型 hlinkClick点击跳转,hlinkHover光标悬停跳转,hlinkMouseOver鼠标经过跳转
                                "linkType": "hlinkClick",
                                "url": "test/%5bContent_Types%5d.xml",
                                "action": "ppaction://hlinkpres?slideindex=1&slidetitle=",
                                "highlightClick": false,//是否强调
                                "sndUrl": null,//触发声音
                                "sndName": null//声音文件名
                            }
                        ]
                    },
                    {//>>>>update
                        "type":"attach",//当为attach 则是数据来源为Hiteach,文本中可包含图片,音频,视频等
                        "url": "http://www.xxx.cn/xxx.png",//附件链接
                        "link": null,// 文件的Stores路径,或ppt跳转页的页码,或者超链接
                        //链接类型,file 是ppt引用的本地文件链接类型,在Stores需要二次上传,slide是跳转的ppt页,hyperlink为超链接
                        "pre": "http://www.xxx.cn/xxx_pre.png",//附件缩略图,或者占位图片,可选为空
                        "width":,32,//占位宽度
                        "height":32,//占位高度
                        "algn":"Center",//Top,Center,Bottom,插入的文本在文字的上中下位置
                    }
                ]
            }
        ]
    },
   
    "style": ....,//公共属性
    "svg": ....,//公共属性
    "uid": "30-22524c7a1212f7f1215177ef7b9923a1641ee39b",//公共属性
    "id": "slidePPTConnectionShape3",//元素id
    "sid": "6",
    "type": "Sp",//公共属性,//元素大类型Sp形状,CxnSp连接线,Media多媒体,Group组合图,Table表格,Chart图表,Diagram(SmartArt)
    "index": 0,//元素层级,类似z-index,0-n 层级越高
    "uid": "df8bc96bd2d14450a3cae9380b54423d",//元素唯一id
    "opacity":1.0,//0 ~ 1 (內定 1)  <--(0:透明, 1:不透明, 物件 之 全體透明度)
    "copy": false,//>>update(物件 之 是否能無限複製)
    "lock": false,//>>update(物件 之 是否被鎖定)
    "links": 
    [
        {
            //链接类型 hlinkClick点击跳转,hlinkHover光标悬停跳转,hlinkMouseOver鼠标经过跳转
            "linkType": "hlinkClick",
            "url": "test/%5bContent_Types%5d.xml",
            "action": "ppaction://hlinkpres?slideindex=1&slidetitle=",
            "highlightClick": false,//是否强调
            "sndUrl": null,//触发声音
            "sndName": null//声音文件名
        }
    ],
    "subName": "矩形 5",//>>update
    /// 题目描述,可以为多个物件设置该属性,表示多个物件描述题干或者选项。
    ///null则没有标记题干或选项, Q 代表是题干,1-n 表示1-n的题目选项序列 1,2,3,4
    "quDesc":"Q",
}