表格文本

使用一个字典对象来描述一个表格文本。包括以下键:

一个列表,每个元素是一个字符串。表格的表头,表头与非表头的区别在与表头会默认区分开。默认采用三线表格,表头单独用横线区分开。表头的数目必须与其他行的数目一致。如果表头中出现前后一致的元素,这两个单元格将会自动合并。

下面栗子中表头的第一个单元格是空字符串,第2、3个单元格会自动合并:

{
   'head': ['', '2016年', '2016年', '2015年']
}

rows

表格其他单元格。一个列表,列表的每个元素表示一行数据,以子列表形式存在。例如:

{
   'rows': [
        ['净利润', '100.00', '200.00', '300.00'],
        ['净利润率', '5%', '6%', '7%']
   ]
}

这里表格有两行,第一行是4个元素,第二个也是4个元素。所以这是一个2行、4列的表格。

merge

表示哪些单元格需要合并,嵌套列表,每一个元素是一个4元素列表,子列表的四个元素分别为指示要合并的行(表头为0行)和列(从0列开始),比如:需要合并单元格A和单元格B,单元格A处于_xa_行、_ya_列,单元格B处于_xb_行、_yb_列。因此可以写成一下形式:

{
   'merge': [
        [xa, ya, xb, yb]
        [...]
   ]
}

height

可选项。行高,可以是一个数值,也可以是一个长度为行数列表。如果是一个数值表示所有行均为相同高度,如果是一个列表则表示各行高度。例如:

{
   'height': 100
}
{
   'height': [100, 200, 100, 200]
}

width

可选项。列宽,可以是一个数值,也可以是一个长度为列数的列表。如果是一个数值表示所有列均为相同宽度,如果是一个列表则表示各列宽度。

align

可选项。对齐方式,默认的对齐方式是数字靠右对齐,其他文字靠左对齐。可以是一个值,也可以是一个长度为列数的数组。取值包括:leftcenterright,分别表示靠左对齐、居中对齐、靠右对齐。

例如:

{
   'align': ['left', 'left', 'center', 'right']
}

border

可选项。

指示哪些位置需要有边框,默认是三线表格,即整个表格的表顶部和底部有边框,以及表头有下边框。

改元素取值是一个列表,每一个列表包含3个元素,即:行还是列,第几行或者第几列,哪个位置需要边框。

比如:

{
    'border': [
        {
            'direction': 'row',
            'idx': 2,
            'position': 'bottom'
        }
    ]
}

这个例子表明是第2行的底部有边框。