近期的一个项目需要以Word文件做模板动态生成Doc文件。
原先是使用 VBA 做的,也可以实现,但效果不太满意,一方面是速度比较慢,另一方面是由于客户端环境比较复杂,经常会出现各种错误。
现在的方案基于WordML,结合 xslt ,生成需要的DOC文档。
下面先记录一下模板和XSLT文件的生成步骤:
1. 编辑需要作为模板的Word文档
2. 将Doc文件另存为XML文件,确认没有附加任何 XML 架构
3. 在XML文档中加入需要的标签<tag/>,并使用 XML ToolBox 进行转换
4. 生成 Schema
5. 可以使用文本编辑器,修改 Schema 文件( xsd)
6. 将架构添加到模板Doc中,最终另存为XML文件
7. 生成模板文件的样式XSLT文件:wml2xslt e:\模板1.xml -o e:\模板1.xslt -nsa -nf -v
8.测试:将模板文件另存为只包含数据的XML文件,如 模板1_data.xml,然后用Word打开它,再应用生成的xslt文件,应可以看到所需要的包含数据的格式。
9.编制程序,动态加载XML或DB数据,生成下载文件。
先这样,有时间再整理吧。
列一下参考的文章和需要的工具。
工具:
XML Toolbox for Microsoft Office Word 2003
(注意此工具需要的安装环境:.NET Framework 1.1和 .NET Programmability Support installed during Office 2003 setup)
wml2xslt
文章
:
与 XML 一起使用 Visual Basic 和 ASP 生成 Excel 2003 工作簿
Word 2003 XML:备忘录样式示例
Developing Word XML Using the Microsoft Office Word 2003 XML Toolbox
Using Just Word 2003 (with a little help from Notepad) to develop XML and XSL documents
Creating a Seed Document [Word 2003 XML Reference]
分享到:
相关推荐
根据 Word 的 XML 模板生成 Word 文件 概述: 本文将详细介绍如何根据 Word 的 XML 模板生成 Word 文件,包括服务位置、参数设置、日期类型字段处理等方面的知识点。 一、服务位置 ...
XML格式的Word文档解析器是一种专门用于处理基于XML结构的Microsoft Word文档的工具。这种解析器通常用于自动化处理、数据填充或批量修改Word文档中的特定内容,如书签替换、表格处理等。以下是对该解析器及其功能的...
在本文中,我们将深入探讨如何在Winform应用中实现基于XML格式的可视化打印模板。首先,我们要明白,Winform是.NET Framework中用于构建桌面应用程序的用户界面框架,而XML是一种可扩展标记语言,常用于存储结构化...
金税盘导入模板XML,XML 格式 说明
资源名称:使用Javascript解析xml文件或xml格式字符串 中文WORD版 内容简介: 本文档主要讲述的是使用Javascript解析xml文件或xml格式字符串;javascript中,不论是解析xml文件,...
在Word中,XML模板是预先设计好的文档格式,包含了特定的占位符或控件,这些控件与XML数据元素相对应。当导入XML数据时,Word会根据模板中的布局和格式,将数据填充到相应的位置。例如,一个循环标签可以用来处理XML...
XML模板是一种结构化文本文件,用于定义Word文档的布局和格式。开发者可以根据需求创建XML模板,模板中包含了占位符,这些占位符在运行时会被Freemarker引擎用实际的数据替换。 接下来,我们需要创建一个Java类,...
在IT行业中,基于XML模板的Word导出技术是一种常见的数据转换和自动化文档生成方法。这种方法主要应用于需要将结构化数据转换成Word文档的场景,比如报告、合同或发票的批量生成。XML(eXtensible Markup Language)...
### Java读写XML、Word与TXT文件:去除乱码问题详解 #### 一、引言 在实际开发过程中,我们经常需要处理各种类型的文件,包括XML、Word文档以及普通的文本文件(如TXT)。这些文件在读写过程中经常会遇到乱码问题,...
在Java编程领域,Apache POI库是一个非常实用的工具,它允许开发者读写Microsoft Office格式的文件,包括Word(.doc/.docx)、Excel(.xls/.xlsx)和PowerPoint(.ppt/.pptx)。本示例聚焦于使用POI库根据Word模板...
首先,我们需要将Word模板转换为XML格式,然后在Access中创建XML数据源。接下来,使用VBA将Access数据导出为XML文件,再将XML文件与Word模板进行数据绑定。这样,Word模板就能根据XML数据动态更新内容。这种方法适合...
1. **创建Word模板**:使用Microsoft Word创建一个模板文件,其中包含固定的格式和需要替换的动态内容。这些动态内容可以是文本、表格或者段落,用特定的标记(如${})作为占位符。 2. **配置Freemarker**:在Java...
本教程将探讨如何利用Java和特定的模板引擎,如Freemarker,来处理Word模板,生成doc和docx格式的个人简历文件。以下是相关知识点的详细说明: 1. **Freemarker模板引擎**: Freemarker是一个强大的、开源的模板...
`FTL`是Freemarker Template Language的缩写,是一种服务器端的模板引擎,常用于生成动态HTML、XML或其他文本格式的文件。 在这个场景下,"Freemarker代码生成器实体映射xml的ftl模板文件"是指利用Freemarker模板...
长期大量使用Word Interop可能导致性能下降,可考虑使用Open XML SDK或者第三方库如NPOI(主要用于处理Office Open XML格式)进行优化。 10. **代码示例**: 以下是一个简化的代码示例,展示如何基于模板生成新...
该模板适用于java,自动格式化代码、xml、配置文件等。代码使用空格代替tab,缩进固定位4个空格。import防止优化,全部改为999,xml、前端代码,使用空格代替tab缩进默认为2个空格。java的doc注释,保留原有内容的...
Word文件本质上是XML格式的,POI通过HWPF(Horizontally-Writeable and Portable Format)组件提供了对旧版Word 97-2003文档的支持,而XWPF(XML Word Processing Format)则用于处理更现代的OpenXML格式的Word文档...
同时,为了保证XML的格式化和验证,可以使用`XMLIndentator`进行美化,或者`javax.xml.validation`包下的工具进行XML校验。 总结起来,Java通过模板生成XML并发送报文涉及XML文档对象的创建、元素的构建、模板引擎...
工具可能使用这个模板来指导XML数据的转换,确保生成的Word文档遵循预设的格式。 使用这个工具,开发者或用户可以将结构化的XML数据批量转换成Word文档,方便报告、报表或文档的生成。例如,一个企业可能有大量XML...