精华内容
下载资源
问答
  • WordXML格式解析

    万次阅读 2017-12-10 12:08:11
    前言 Office2003以上,Word可以以XML文本格式存储,这样就可以使用外部...一个典型的WordXML结构可以是如下的样子: Hello, World. 可以用记事本创建一个文件,将上面的XML内容粘贴,并保存为h

    前言

    Office2003以上,Word可以以XML文本格式存储,这样就可以使用外部程序创建Word文件,而不需要使用Word的对象。也能够自由的打开分析Word文件,或者发布到自己的Web页面,或者其他更多应用。

    一个典型的WordXML结构可以是如下的样子:

    <?xml version="1.0"?>
    <w:wordDocument xmlns:w="http://schemas.microsoft.com/office/word/2003/wordml">
    <w:body>
    <w:p>
    <w:r>
    <w:t>Hello, World.</w:t>
    </w:r>
    </w:p>
    </w:body>
    < /w:wordDocument>

    image

    可以用记事本创建一个文件,将上面的XML内容粘贴,并保存为helloworld.xml,在Office Word中打开它,就能看到如上图所示的内容。

    这是最简单的WordXML内容,它包括这几部分:

    XML的声明和名称空间的指明:
    <?xml version="1.0"?>
    <w:wordDocument xmlns:w="http://schemas.microsoft.com/office/word/2003/wordml">

    文档内容

    <w:body>…</w:body>

    基本节点类型

    从body内可以看出,构成实际文本内容的有3种类型节点:
    <w:p> 表示一个段落

    <w:r> 表示一个样式串,指明它包括的文本的显示样式

    <w:t> 表示真正的文本内容

    如果我们需要指明一个文本为粗体,需要怎么办呢?

    <w:r>
    <w:rPr> 
    <w:b w:val="on"/>
    </w:rPr> 
    <w:t> 2.0C</w:t>
    < /w:r>

    <w:b w:val=”on”> 表示该格式串种的文本为粗体。

    这样,我们就知道<w:r>表示一个特定的文本格式,稍微复杂点的格式:

    <w:r>
    < w:rPr> 
    < w:b w:val="on"/>
    < w:sz w:val="40"/><w:szCs w:val="40"/>
    < w:rFonts w:ascii="Arial" w:eastAsia="Arial" w:hAnsi="Arial" />
    < /w:rPr> 
    < w:t xml:space="preserve">2.0C</w:t>
    < /w:r>

    字体为粗体,尺寸为是40除2等于20相当于几号字体?,字体名称“Arial”

    <w:t xml:space="preserve"> 2.0C</w:t>

    中的xml:space="preserve"从字面上理解是保持空格。

    如果没有这内容的话文本的前后空格将会被Word忽略。

    如果我们需要指定一个段的对齐方式,行距要怎么办呢?

    这就要设置<w:p>的属性了。类似于这样:

    <w:p>
    < w:pPr>
    < w:jc w:val="right"/>
    < w:spacing w:line="600" w:lineRule="auto"/>
    < /w:pPr>

    </w:p>

    对齐方向:<w:jc w:val=”right”/> 这儿是右对齐。

    行距:<w:spacing w:line=”600” w:lineRule="auto"/> 600是用行距的倍数乘240得出,如果是两倍行距,则是480。这儿应该是2.5倍行距。

    由此可见,组装一个WordXML格式的文件是一件比较简单的事情。

    将段属性包含在<w:pPr></w:pPr>中

    将文本格式包含在<w:rPr></w:rPr>中

    这儿的Pr是property的意思,表示这个块中是r(run)或p(paragraph)的格式设置。

    一个WordXML的文件结束了吗?可以这样讲,但如果你双击刚才创建的XML文件,有很大机会不会由Word来打开它。

    这是为什么呢?

    我们还需要在合适的地方放置一条语句:

    <?xml version="1.0"?>
    <?mso-application progid="Word.Document"?>
    <w:wordDocument 

    用来指明这个xml文件的对应处理程序,对应注册表中的键值:

    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office\11.0\Common\Filter\text/xml

    但是,加入这一条语句后,双击打开时,Word将会提示XML的格式不正确,虽然能打开。那是因为还有许多的内容没有声明。我们就先不加这条语句。

    页面设置

    下面内容设置了页的宽,高,和页的各边距。各项的值均是英寸乘1440得出:

    <w:body>…
    <w:sectPr>
    <w:pgSz w:w="12240" w:h="15840"/>
    <w:pgMar w:top="1440" w:right="1800" w:bottom="1440" w:left="1800" w:header="720" w:footer="720" w:gutter="0"/>
    < /w:sectPr>

    </w:body>

    下面内容设置了页的页眉页脚:

    w:sectPr wsp:rsidR="002C452C">
    <w:hdr w:type="odd" >
    <w:p>
    <w:pPr>
    <w:pStyle w:val="Header"/>
    </w:pPr>
    <w:r>
    <w:t>My Header</w:t>
    </w:r>
    </w:p>
    </w:hdr>
    <w:ftr w:type="odd">
    <w:p>
    <w:pPr>
    <w:pStyle w:val="Footer"/>
    </w:pPr>
    <w:r>
    <w:t>My Footer</w:t>
    </w:r>
    </w:p>
    </w:ftr>

    </w:sectPr>
    < /w:body>

    这两段都很直白,就不需要解释了。

    文档设置

    </w:body>

    <w:docPr>
    <w:view w:val="print"/><w:zoom w:percent="100"/>
    < /w:docPr>

    </w:wordDocument>

    docPr,就是document property的意思了。

    表示文档的视图是“print”,视图比例100%

    完整的XML文件实例

    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
    < ?mso-application progid="Word.Document"?>
    < w:wordDocument xmlns:aml="http://schemas.microsoft.com/aml/2001/core"
    xmlns:dt="uuid:C2F41010-65B3-11d1-A29F-00AA00C14882"
    xmlns:o="urn:schemas-microsoft-com:office:office"
    xmlns:v="urn:schemas-microsoft-com:vml"
    xmlns:w10="urn:schemas-microsoft-com:office:word"
    xmlns:w="http://schemas.microsoft.com/office/word/2003/wordml"
    xmlns:wx="http://schemas.microsoft.com/office/word/2003/auxHint"
    xmlns:wsp="http://schemas.microsoft.com/office/word/2003/wordml/sp2"
    xmlns:sl="http://schemas.microsoft.com/schemaLibrary/2003/core"
    w:macrosPresent="no" w:embeddedObjPresent="no" w:ocxPresent="no"
    xml:space="preserve">

    <w:body>
    < w:p>
    < w:pPr>
    < w:jc w:val="left"/>
    < w:spacing w:line="240" w:lineRule="auto"/>
    < /w:pPr>
    < w:r>
    < w:rPr> 
    < w:sz w:val="24"/><w:szCs w:val="24"/>
    < w:rFonts w:ascii="Arial" w:eastAsia="Arial" w:hAnsi="Arial" />
    < /w:rPr> 
    < w:t>Niu don't like Red or Blue! It seems that </w:t>
    < /w:r>
    < w:r>
    < w:rPr> 
    < w:sz w:val="48"/><w:szCs w:val="48"/>
    < w:rFonts w:ascii="Arial" w:eastAsia="Arial" w:hAnsi="Arial" />
    < /w:rPr> 
    < w:t>Hello world!</w:t>
    < /w:r>
    < /w:p>
    < w:p>

    <w:sectPr wsp:rsidR="002C452C">
    < w:pgSz w:w="12240" w:h="15840"/>
    < w:pgMar w:top="1526.4" w:right="3254.4" w:bottom="2966.4" w:left="1670.4" w:header="720" w:footer="720" w:gutter="0"/>
    < w:hdr w:type="odd" >
    < w:p>
    < w:pPr>
    < w:pStyle w:val="Header"/>
    < /w:pPr>
    < w:r>
    < w:t>Header</w:t>
    < /w:r>
    < /w:p>
    < /w:hdr>
    < w:ftr w:type="odd">
    < w:p>
    < w:pPr>
    < w:pStyle w:val="Footer"/>
    < /w:pPr>
    < w:r>
    < w:t>Footer</w:t>
    < /w:r>
    < /w:p>
    < /w:ftr>
    < /w:sectPr>
    < /w:body>

    <w:docPr>
    < w:view w:val="print"/><w:zoom w:percent="100"/>
    < /w:docPr>
    < /w:wordDocument>

    这样,一个基本的WordXML就创建完成,当然,一个应用级别的Word文档绝对不仅这些内容,更详细的内容需要参考MS Office SDK。

    展开全文
  • WordXML】 项目中有时需要Word文档的导出/预览功能,使用Freemarker工具可以实现,文档的模板为WordXML格式,类似于html语言,不同标签含义不同,以下是经常用到的一些标签和注释: <w:body>//文档主体 ...

    【WordXML】
    项目中有时需要Word文档的导出/预览功能,使用Freemarker工具可以实现,文档的模板为WordXML格式,类似于html语言,不同标签含义不同,以下是经常用到的一些标签和注释:

      <w:body>//文档主体
        
        <w:tbl>//表格
          <w:tblPr>//表格属性
            ……
          </w:tblPr>
          <w:tblGrid>//表格列宽
            <w:gridCol w:w="xxx"/>
            <w:gridCol w:w="xxx"/>
          </w:tblGrid>
          <w:tr w:rsidR="00BD68AB">//表格的一行
            <w:trPr>//表格行属性
              <w:trHeight w:val="427"/>
            </w:trPr>
            <w:tc>//表格的一个单元格
              <w:tcPr>//单元格属性
                ……
              </w:tcPr>
              <w:p>//一个段落
                <w:pPr>//段落属性
                  <w:jc w:val="center"/>//设置内容居中
    			  <w:spacing w:line="360" w:lineRule="exact"/>//设置行距(line为行距值,240为单倍行距,以此类推)
                  <w:rPr>//设置区域内文本属性
                    ……
                  </w:rPr>
                </w:pPr>
                <w:r>//表示一个样式串,指明它包括的文本的显示样式
                  <w:rPr>//设置区域内文本属性(与<w:pPr>标签内属性一样)
                    ……
                  </w:rPr>
                  <w:t>………………</w:t>//文字内容(真正能看到的,前面的若干行都是为这一行做铺垫)
    			  //注;文字内容可以写死,也可以动态取值,如:${Detail1.companyName!}
                </w:r>
              </w:p>
            </w:tc>
          </w:tr>
        </w:tbl>
       
        <w:sectPr>//设置整个页面的属性
          <w:footerReference w:type="default" r:id="rId8"/>
          <w:pgSz w:w="16838" w:h="11906" w:orient="landscape"/>
          <w:pgMar w:top="851" w:right="851" w:bottom="851" w:left="851" w:header="851" w:footer="454" w:gutter="0"/>
        </w:sectPr>
    	
      </w:body>
    

    注:上述文本可以保存为ftl文件或xml文件,xml文件可以使用office打开看到模板效果。

    展开全文
  • wordxml文档格式说明

    2018-10-11 20:25:00
    近期需要对word xml文档进行各种操作,需要熟悉 wordxml 文档格式,搜索了一番后发现 open xml sdk 官网的文档最好。就按照官网说明来记录一番 1 word xml 文档基本格式如下。文档是有多个部件组成,每个部件表示...

    近期需要对word xml文档进行各种操作,需要熟悉 wordxml 文档格式,搜索了一番后发现 open xml sdk 官网的文档最好。就按照官网说明来记录一番

    1 word xml 文档基本格式如下。文档是有多个部件组成,每个部件表示数据包中的一个单独文件。每个文档部分都是以 pkg:part 标记开头。

     

    2 对各个部件进行简单介绍

     2.1 .rels 部件

    数据包标记内部的第一个部件是 .rels 文件,它定义数据包顶级各部件之间的关系(通常为文档属性、缩略图(如果有),以及主文档正文)。标记中始终需要部件中的一些内容,因为您需要将(内容所在的)主文档部件的关系定义为文档包。

     

    2.2  document.xml.rels 部件

     部分定义了 document.xml(正文)部分(若有)所需的其他部分的关系。

     

    2.3 document.xml 部件是文档正文中的内容。您当然需要此部件的元素,因为它正好是内容显示的位置。

     

    2.4

     

    展开全文
  • wordXML格式浅析

    千次阅读 2012-08-03 15:57:07
    前言 Office2003以上,Word可以以XML文本格式存储,这样就可以使用外部...一个典型的WordXML结构可以是如下的样子: Hello, World. 可以用记事本创建一个文件,将上面的XML内容粘贴,并保

    前言

    Office2003以上,Word可以以XML文本格式存储,这样就可以使用外部程序创建Word文件,而不需要使用Word的对象。也能够自由的打开分析Word文件,或者发布到自己的Web页面,或者其他更多应用。

    一个典型的WordXML结构可以是如下的样子:

    <?xml version="1.0"?>
    <w:wordDocument xmlns:w="http://schemas.microsoft.com/office/word/2003/wordml">
    <w:body>
    <w:p>
    <w:r>
    <w:t>Hello, World.</w:t>
    </w:r>
    </w:p>
    </w:body>
    < /w:wordDocument>

    image

    可以用记事本创建一个文件,将上面的XML内容粘贴,并保存为helloworld.xml,在Office Word中打开它,就能看到如上图所示的内容。

    这是最简单的WordXML内容,它包括这几部分:

    XML的声明和名称空间的指明:
    <?xml version="1.0"?>
    <w:wordDocument xmlns:w="http://schemas.microsoft.com/office/word/2003/wordml">

    文档内容

    <w:body>…</w:body>

    基本节点类型

    从body内可以看出,构成实际文本内容的有3种类型节点:
    <w:p> 表示一个段落

    <w:r> 表示一个样式串,指明它包括的文本的显示样式

    <w:t> 表示真正的文本内容

    如果我们需要指明一个文本为粗体,需要怎么办呢?

    <w:r>
    <w:rPr>
    <w:b w:val="on"/>
    </w:rPr>
    <w:t> 2.0C</w:t>
    < /w:r>

    <w:b w:val=”on”> 表示该格式串种的文本为粗体。

    这样,我们就知道<w:r>表示一个特定的文本格式,稍微复杂点的格式:

    <w:r>
    < w:rPr>
    < w:b w:val="on"/>
    < w:sz w:val="40"/><w:szCs w:val="40"/>
    < w:rFonts w:ascii="Arial" w:eastAsia="Arial" w:hAnsi="Arial" />
    < /w:rPr>
    < w:t xml:space="preserve">2.0C</w:t>
    < /w:r>

    字体为粗体,尺寸为是40除2等于20相当于几号字体?,字体名称“Arial”

    <w:t xml:space="preserve"> 2.0C</w:t>

    中的xml:space="preserve"从字面上理解是保持空格。

    如果没有这内容的话文本的前后空格将会被Word忽略。

    如果我们需要指定一个段的对齐方式,行距要怎么办呢?

    这就要设置<w:p>的属性了。类似于这样:

    <w:p>
    < w:pPr>
    < w:jc w:val="right"/>
    < w:spacing w:line="600" w:lineRule="auto"/>
    < /w:pPr>

    </w:p>

    对齐方向:<w:jc w:val=”right”/> 这儿是右对齐。

    行距:<w:spacing w:line=”600” w:lineRule="auto"/> 600是用行距的倍数乘240得出,如果是两倍行距,则是480。这儿应该是2.5倍行距。

    由此可见,组装一个WordXML格式的文件是一件比较简单的事情。

    将段属性包含在<w:pPr></w:pPr>中

    将文本格式包含在<w:rPr></w:rPr>中

    这儿的Pr是property的意思,表示这个块中是r(run)或p(paragraph)的格式设置。

    一个WordXML的文件结束了吗?可以这样讲,但如果你双击刚才创建的XML文件,有很大机会不会由Word来打开它。

    这是为什么呢?

    我们还需要在合适的地方放置一条语句:

    <?xml version="1.0"?>
    <?mso-application progid="Word.Document"?>
    <w:wordDocument

    用来指明这个xml文件的对应处理程序,对应注册表中的键值:

    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office\11.0\Common\Filter\text/xml

    但是,加入这一条语句后,双击打开时,Word将会提示XML的格式不正确,虽然能打开。那是因为还有许多的内容没有声明。我们就先不加这条语句。

    页面设置

    下面内容设置了页的宽,高,和页的各边距。各项的值均是英寸乘1440得出:

    <w:body>…
    <w:sectPr>
    <w:pgSz w:w="12240" w:h="15840"/>
    <w:pgMar w:top="1440" w:right="1800" w:bottom="1440" w:left="1800" w:header="720" w:footer="720" w:gutter="0"/>
    < /w:sectPr>

    </w:body>

    下面内容设置了页的页眉页脚:

    w:sectPr wsp:rsidR="002C452C">
    <w:hdr w:type="odd" >
    <w:p>
    <w:pPr>
    <w:pStyle w:val="Header"/>
    </w:pPr>
    <w:r>
    <w:t>My Header</w:t>
    </w:r>
    </w:p>
    </w:hdr>
    <w:ftr w:type="odd">
    <w:p>
    <w:pPr>
    <w:pStyle w:val="Footer"/>
    </w:pPr>
    <w:r>
    <w:t>My Footer</w:t>
    </w:r>
    </w:p>
    </w:ftr>

    </w:sectPr>
    < /w:body>

    这两段都很直白,就不需要解释了。

    文档设置

    </w:body>

    <w:docPr>
    <w:view w:val="print"/><w:zoom w:percent="100"/>
    < /w:docPr>

    </w:wordDocument>

    docPr,就是document property的意思了。

    表示文档的视图是“print”,视图比例100%

    完整的XML文件实例

    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
    < ?mso-application progid="Word.Document"?>
    < w:wordDocument xmlns:aml="http://schemas.microsoft.com/aml/2001/core"
    xmlns:dt="uuid:C2F41010-65B3-11d1-A29F-00AA00C14882"
    xmlns:o="urn:schemas-microsoft-com:office:office"
    xmlns:v="urn:schemas-microsoft-com:vml"
    xmlns:w10="urn:schemas-microsoft-com:office:word"
    xmlns:w="http://schemas.microsoft.com/office/word/2003/wordml"
    xmlns:wx="http://schemas.microsoft.com/office/word/2003/auxHint"
    xmlns:wsp="http://schemas.microsoft.com/office/word/2003/wordml/sp2"
    xmlns:sl="http://schemas.microsoft.com/schemaLibrary/2003/core"
    w:macrosPresent="no" w:embeddedObjPresent="no" w:ocxPresent="no"
    xml:space="preserve">

    <w:body>
    < w:p>
    < w:pPr>
    < w:jc w:val="left"/>
    < w:spacing w:line="240" w:lineRule="auto"/>
    < /w:pPr>
    < w:r>
    < w:rPr>
    < w:sz w:val="24"/><w:szCs w:val="24"/>
    < w:rFonts w:ascii="Arial" w:eastAsia="Arial" w:hAnsi="Arial" />
    < /w:rPr>
    < w:t>Niu don't like Red or Blue! It seems that </w:t>
    < /w:r>
    < w:r>
    < w:rPr>
    < w:sz w:val="48"/><w:szCs w:val="48"/>
    < w:rFonts w:ascii="Arial" w:eastAsia="Arial" w:hAnsi="Arial" />
    < /w:rPr>
    < w:t>Hello world!</w:t>
    < /w:r>
    < /w:p>
    < w:p>

    <w:sectPr wsp:rsidR="002C452C">
    < w:pgSz w:w="12240" w:h="15840"/>
    < w:pgMar w:top="1526.4" w:right="3254.4" w:bottom="2966.4" w:left="1670.4" w:header="720" w:footer="720" w:gutter="0"/>
    < w:hdr w:type="odd" >
    < w:p>
    < w:pPr>
    < w:pStyle w:val="Header"/>
    < /w:pPr>
    < w:r>
    < w:t>Header</w:t>
    < /w:r>
    < /w:p>
    < /w:hdr>
    < w:ftr w:type="odd">
    < w:p>
    < w:pPr>
    < w:pStyle w:val="Footer"/>
    < /w:pPr>
    < w:r>
    < w:t>Footer</w:t>
    < /w:r>
    < /w:p>
    < /w:ftr>
    < /w:sectPr>
    < /w:body>

    <w:docPr>
    < w:view w:val="print"/><w:zoom w:percent="100"/>
    < /w:docPr>
    < /w:wordDocument>

    这样,一个基本的WordXML就创建完成,当然,一个应用级别的Word文档绝对不仅这些内容,更详细的内容需要参考MS Office SDK。


    展开全文
  • WordXML格式初步分析

    千次阅读 2016-11-29 21:45:43
    前言 Office2003以上,Word可以以XML文本格式存储,这样就可以使用外部程序创建Word文件,而不需要使用Word的对象。...一个典型的WordXML结构可以是如下的样子:        Hello, World.    
  • 学习:WordXML格式初步分析

    千次阅读 2015-10-23 13:58:37
    前言 Office2003以上,Word可以以XML文本格式存储,这样就可以使用外部程序创建Word文件,而不需要使用Word的对象。...一个典型的WordXML结构可以是如下的样子:        Hello, World.    
  • word xml + freemarker生成模板文件

    千次阅读 2018-04-13 19:45:54
    一、word xml 2003 常用标签 :包含word内容; :大标题; :段落开始的标识; :对应每一个大纲级别,每增加一个大纲级别,就要多一个; :表格开始的标识; 表格中增加一行; 表格中行中增加一列; 二、...
  • 最近用了一种wordxml写了合同的模板,但是附件部分有个表格,需要根据客户提供的汇票数量显示对应的表格数量,如图: 1、这是文档模板截图 ![](https://img-ask.csdn.net/upload/201802/09/1518144297_696787.png)...
  • Word Xml格式 标签说明

    2020-09-04 15:47:56
    <w:tbl> 表格开始标志 <w:tblPr>表格属性 <w:tblW w:w="0" w:type="auto"/>这个type=还可以使用“pct”根据窗口调整 ...w:jc w:val="center"/>...w:top w:val="single" w:sz="4" wx:bdrwidth="10" ...
  •  public static void wordToXml(String filePath,String xmlFilePath){  try {   ActiveXComponent app = new ActiveXComponent( "Word.Application"); //启动word   app.setProperty(...
  • 使用freemarker技术生成word时,当文件内容是xml,如果直接使用占位符${value}换行符不生效,显示内容达不到预期效果,需要手工对xml内容进行处理,处理方法如下: 代码处理: /** * xml 是格式化后的xml内容 */...
  • 导出word文档——WordXML格式解析

    万次阅读 2015-11-14 15:08:38
    如: <w:t xml:space="preserve"> </w:t>  xml:space="preserve"从字面上理解是保持空格 --> <w:r>:表示一个样式串,指明它包括的文本的显示样式,如文本属性加粗、下划线、倾斜的分割,内含w:rsidRPr...
  • 1.首先在xml中找到我们需要添加分页符的位置 例如:我需要在这个第一部分上面添加一个分页符 2.找到这个【第一部分】这个位置之后,开始往上找,找到对应的位置 3.在</w:pPr>下方添加分页符代码 1 <w:...
  • 分析得出
  • ![![图片说明](https://img-ask.csdn.net/upload/201710/27/1509071851_636516.png)图片说明](https://img-ask.csdn.net/upload/201710/27/1509071844_247612.png)怎么取消这个边框 是哪个标签啊
  • word xml 各个标签含义

    千次阅读 2019-06-13 14:32:00
    --保持空格,如果没有这内容的话,文本的前后空格将会被Word忽略--> " 600 " w:lineRule= " auto " /> <!--设置行距,要进行运算,要用数字除以240,如此处为600/ 240 = 2 .5倍行距--> " center " /> <!-- 这句...
  • 官方文档https://docs.microsoft.com/zh-cn/dotnet/api/documentformat.openxml.wordprocessing.tablewidth?view=openxml-2.8.1 找到了:

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 114,595
精华内容 45,838
关键字:

wordxml