Appearance
解析 MSOffice Word 有序列表样式
最近在处理一个功能: 复制
Word中的有序列表,粘贴到我们的WebOffice中
中文有序列表常用样式如下:
txt
一、有序列表1
二、有序列表2
三、有序列表3
壹、有序列表1
贰、有序列表2
叁、有序列表3
甲、有序列表1
乙、有序列表2
丙、有序列表3微软 DocumentFormat 文档
下面的链接中详细的说明了
NumberFormatValues样式
解析字段
在处理粘贴式,获取粘贴的 html 进行样式解析,其中:
mso-level-number-format
javascript
mso-level-number-format:chinese-counting这种样式使用中文数字,例如一、二、三、四等。它是较为常见的中文文档有序列表样式,使用中文数字对文档进行编号
其他字段
这里我直接从 Word 文件解压的 numbering.xml 可以看到有序列表有哪些字段:
xml
...
<w:lvl w:ilvl="0">
<w:start w:val="1"/>
<w:numFmt w:val="japaneseCounting" /><w:isLgl w:val="false"/><w:suff w:val="tab"/>
<w:lvlText w:val="%1、"/>
<w:lvlJc w:val="left" />
<w:pPr>
...可以看到除了 mso-level-number-format 定义了有序列表样式外,还有如下一些字段需要进行适配:
<w:lvl w:ilvl="0">: 定义编号的第一个级别(ilvl=0表示第一级别)<w:start w:val="1"/>: 指定该级别的编号从1开始。<w:numFmt w:val="japaneseCounting"/>: 使用日文计数格式。这意味着文档中的编号将采用日文的计数方式,例如:“一、二、三、...”<w:isLgl w:val="false"/>: 表示不使用法律编号(legal numbering)<w:suff w:val="tab"/>: 指定编号后的后缀是制表符(Tab)<w:lvlText w:val="%1、"/>: 设置编号文本格式,使用%1、表示编号后跟一个顿号<w:lvlJc w:val="left"/>: 将编号文本左对齐<w:pPr>: 段落属性标签