pageoffice创建word模板_pageoffice word模板 - CSDN
精华内容
参与话题
  • PageOffice动态生成WORD文件

    千次阅读 2018-09-13 14:26:11
    不仅支持从一个空白的Word生成文件,还可以对现有的word模板做数据填充,还可以把多个word模板插入到一个word模板中不同的位置来组合生成文件,比如做一个试卷生成系统,甚至还可以插入图片和Excel文件到word模板中...

    PageOffice 组件提供的接口和对象都简洁高效,开发效率很高。不仅支持从一个空白的Word生成文件,还可以对现有的word模板做数据填充,还可以把多个word模板插入到一个word模板中不同的位置来组合生成文件,比如做一个试卷生成系统,甚至还可以插入图片和Excel文件到word模板中的指定位置去生成一个复合型的文档报表,功能异常强大。下面列举几个生成文件的效果代码:

    1. 从空白生成文件的代码:
        WordDocument doc = new WordDocument();
        
    	//设置内容标题
        //创建DataRegion对象,PO_title为自动添加的书签名称,书签名称需以“PO_”为前缀,切书签名称不能重复
        //三个参数分别为要新插入书签的名称、新书签的插入位置、相关联的书签名称(“[home]”代表Word文档的页首)
        DataRegion title = doc.createDataRegion("PO_title", DataRegionInsertType.After, "[home]");
        //给DataRegion对象赋值
        title.setValue("JAVA中编程实例\n");
        //设置字体:粗细、大小、字体名称、是否是斜体
        title.getFont().setBold(true);
        title.getFont().setSize(20);
        title.getFont().setName("黑体");
        title.getFont().setItalic(false);
        //定义段落对象
        ParagraphFormat titlePara = title.getParagraphFormat();
        //设置段落对齐方式
        titlePara.setAlignment(WdParagraphAlignment.wdAlignParagraphCenter);
        //设置段落行间距
        titlePara.setLineSpacingRule(WdLineSpacing.wdLineSpaceMultiple);
    
    	//设置内容
        //第一段
        //创建DataRegion对象,PO_body为自动添加的书签名称
        DataRegion body = doc.createDataRegion("PO_body", DataRegionInsertType.After, "PO_title");
        //设置字体:粗细、是否是斜体、大小、字体名称、字体颜色
        body.getFont().setBold(true);
        body.getFont().setItalic(true);
        body.getFont().setSize(10);
        //设置中文字体名称
        body.getFont().setName("楷体");
        //设置英文字体名称
        body.getFont().setNameAscii("Times New Roman");
        body.getFont().setColor(Color.red);
        //给DataRegion对象赋值
        body.setValue("首先,我向大家介绍一下套接字的概念。\n");
        //创建ParagraphFormat对象
        ParagraphFormat bodyPara = body.getParagraphFormat();
        //设置段落的行间距、对齐方式、首行缩进
        bodyPara.setLineSpacingRule(WdLineSpacing.wdLineSpaceAtLeast);
        bodyPara.setAlignment(WdParagraphAlignment.wdAlignParagraphLeft);
        bodyPara.setFirstLineIndent(21);
    
    1. 在一个word模板的文件中插入一个图片、word和Excel文档的代码:
        WordDocument doc = new WordDocument();
    	//插入图片
        // PO_body3是word模板中已存在的一个书签
        DataRegion body4 = doc.createDataRegion("PO_body4", DataRegionInsertType.After, "PO_body3");
        body4.setValue("[image]doc/logo.png[/image]");
        //嵌入其他Word文件
        //body4.Value = "[word]doc/1.doc[/word]";
        //嵌入其他Excel文件
        //body4.Value = "[excel]doc/1.xls[/excel]";
        ParagraphFormat bodyPara4 = body4.getParagraphFormat();
        bodyPara4.setAlignment(WdParagraphAlignment.wdAlignParagraphCenter);
    
    1. 操作word中的表格代码:
        WordDocument doc = new WordDocument();
    	//打开数据区域
    	DataRegion dataRegion = doc.openDataRegion("PO_regTable");
    	//打开table,openTable(index)方法中的index代表Word文档中table位置的索引,从1开始
    	Table table = dataRegion.openTable(1);
    	//给table中的单元格赋值, openCellRC(int,int)中的参数分别代表第几行、第几列,从1开始
    	table.openCellRC(3, 1).setValue("A公司");
    	table.openCellRC(3, 2).setValue("开发部");
    	table.openCellRC(3, 3).setValue("李清");
    	//插入一行,insertRowAfter方法中的参数代表第几行,从1开始
    	table.insertRowAfter(3);
    	table.openCellRC(4, 1).setValue("B公司");
    	table.openCellRC(4, 2).setValue("销售部");
    	table.openCellRC(4, 3).setValue("张三");
    
    1. 给word添加一个水印,对于实现这个效果来说,PageOffice确实已经做到简单到极致,如果用iText那个方案,需要写至少十几行代码吧(由于篇幅的限制,这里就不写了,有兴趣的话可以网上搜索一下相关的资料),但 PageOffice的代码只用下面一句:
        WordDocument doc =new WordDocument();
        //添加水印 ,设置水印的内容
        doc.getWaterMark().setText("北京某某公司");
    

    优点有以下几点:不限制于Windows平台;接口和对象的设计就是针对Office文件生成专门优化设计的,代码写起来比较舒服可读性强;编程的工作量更小,如果开发中也利用了Word模板,那开发量可以更低;生成的文件是地地道道的Word格式,生成的文件效果比较完美;也不需要像POI那样必须对doc和docx格式分别写代码;最后一点:服务器端不需要安装Office,不使用服务器端资源,所以不需要处理服务器端文件生成时的并发问题,也就是很多用户同时访问系统生成文件时服务器的压力问题。请注意这点,采用这个方案的话,文件是在客户端生成的,调用的是客户端的资源,完全符合分布式计算的思想。

    展开全文
  • PageOffice--实现用户自定义Word模板

    千次阅读 2018-09-12 14:19:50
    导读: 在涉及到word文档生成的项目中,一般采用编程将数据填充到word模板中生成文件的实现方式,如果模板由开发人员自己设计,那么编程填充数据是相对容易实现的;但如果用户希望可以自己修改模板或自己定义新模板...

    导读: 在涉及到word文档生成的项目中,一般采用编程将数据填充到word模板中生成文件的实现方式,如果模板由开发人员自己设计,那么编程填充数据是相对容易实现的;但如果用户希望可以自己修改模板或自己定义新模板,并且又不需要开发人员针对新模板重写代码,那么应该使用怎样的技术来实现这种需求呢?本文就此问题展开论述。

    在实际的开发过程中,针对导出生成word文档的需求,都是用程序填充数据到word模板中来实现的。所谓模板也就是标记了数据位置和字体段落样式的Word文件。一般来说,模板中的数据可以分为两种:一种是一对一的,一个数据在模版中对应一个数据位置,比如一个模板只需要使用“部门、姓名、原因、天数、日期”5个数据,每个数据只需要在文件中使用一次,如下图模板所示:

    1710

    用户定义模板时可以使用全部数据,也可以使用5个数据中的任意4个、3个甚至1个,但模板中数据标签的数量总是这个集合的子集。

    另一种是一对多,一个数据在同一个模版中可以使用一次,也可以使用多次。例如下图的介绍信的模板,每一个数据都需要在文件中出现两次。

    1711

    如果一个项目系统中所有的模板都是固定的,那么只需要在系统开发过程中由开发人员和用户一起把模板做好,之后,开发人员根据业务逻辑编写程序,给模板中的数据位置填充具体的数据即可实现,但在实际的应用中,很多时候不是这样的,最终用户还是希望能自己随时新建和修改模板,以满足不断变化的业务需求,如果每次模板的变化都需要和开发人员一起来完成,那么这个项目就永远不会完工。
    为了满足用户的这一需求,在项目中就需要提供一个模板制作和管理的模块,又为了让程序可以控制和识别用户定义模板中的数据位置,那么就需要开发人员来制作一个约定,让最终用户在新建或编辑模板时必须按照约定来制作模板。那么应该如何约定呢? PageOffice提供的解决方案就是使用书签和特殊格式的文本来对文档中需要插入数据的位置做标记。

    第一种方法使用书签来标记数据位置。Word文档中插入书签的方法:把光标定位到需要标记数据位置的地方,点Word菜单中的“插入”-“书签”,就会弹出一个标题为“书签”的对话框,输入新书签的名称,书签名可以包含数字但中间不能有空格,用PageOffice开发的时候不推荐使用中文命名书签名。注意:如果新插入位置或新对象采用的是已有的书签名,原有的书签将自动取消,所以使用书签来标记数据位置的话,肯定是一个数据对应模板中一个位置的一对一模式。
    在使用PageOffice开发的过程中,为了避免出现与用户自己定义的书签出现冲突,要求插入的书签名称必须以“PO_”开头。注意是字母o,不是数字0。书签名是不区分大小写的也可以写成“po_”。在PageOffice的概念里提到的数据区域,本质上就是书签,但是只有“po_”开头的书签才叫数据区域(DataRegion),请大家注意这点。

    第二种方法就是使用特殊格式的文本来标记数据位置,比如说:【合同日期】、【##合同日期##】、[合同日期]……等等。使用书签标记数据位置有一个明显的缺点,同一个书签名称在一个word文档中只能出现一次,也就是说一个数据区域在文档中肯定是唯一的,但是很多时候模版中需要多处位置使用同样的数据变量,例如上面举例使用的“合同日期”可能就需要在一个合同中多个位置出现,使用数据区域肯定是无法满足需求的,但是使用特殊格式的文本来标记就没有这种限制了。

    在PageOffice的概念里,这种【合同日期】、【##合同日期##】、[合同日期]……等等特殊格式的文本都可以被认为是数据标签(DataTag),同一个数据标签可以在一份文件中多个位置出现多次,动态填充数据标签生成文件的时候,同一个数据标签都会被同样的数据替换。

    注意:【合同日期】和【##合同日期##】是两个不同的数据标签,同一个数据标签一定要是文本格式完全一致,比如:【##合同日期##】和【##合同日期##】虽然字体颜色和大小都不一样,但是文本内容是完全一样的,就被认为是同一个数据标签,所以在模版制作的时候定义数据标签是很简单的,只需要插入同样格式的文本就可以了。

    虽然以上的两点约定已经定好了,但是让用户在编辑模版的时候使用office自身的功能来制作和编辑模版,还是步骤繁琐、困难重重,制作的模板也容易出现一些问题,为此,PageOffice提供了定义模板的接口,由开发人员使用程序预先定义好用户可以使用的数据区域和数据标签,当用户编辑模版的时候,给用户弹出一个数据区域和数据标签的选择窗口,用户只需要选择使用这些数据区域和数据标签插入到word模版中,设置好数据的段落格式、字体、样式、颜色等等。这样以来,不但处理好了约定的问题,而且使得用户自定义模板的操作更加简单快捷。

    一、 使用PageOffice提供的编辑模版功能:

    PageOffice给开发人员提供了定义模版的接口DefineDataRegion和DefineDataTag方法,

    • PageOffice.WordWriter.WordDocument.Template.DefineDataRegion
    • PageOffice.WordWriter.WordDocument.Template.DefineDataTag

    1. 使用DefineDataRegion定义数据区域,例如Java代码如下:
            WordDocument doc = new WordDocument();
            doc.getTemplate().defineDataRegion("Name", "[ 姓名 ]");
            doc.getTemplate().defineDataRegion("Address", "[ 地址 ]");
            doc.getTemplate().defineDataRegion("Tel", "[ 电话 ]");
            doc.getTemplate().defineDataRegion("Phone", "[ 手机 ]");
            doc.getTemplate().defineDataRegion("Sex", "[ 性别 ]");
            doc.getTemplate().defineDataRegion("Age", "[ 年龄 ]");
            doc.getTemplate().defineDataRegion("Email", "[ 邮箱 ]");
            doc.getTemplate().defineDataRegion("QQNo", "[ QQ号 ]");
            doc.getTemplate().defineDataRegion("MSNNo", "[ MSN号 ]");
    

    或者用ASP.NET开发的话,代码如下:

    	    PageOffice.WordWriter.WordDocument doc = new PageOffice.WordWriter.WordDocument();
            doc.Template.DefineDataRegion("Name", "[ 姓名 ]");
            doc.Template.DefineDataRegion("Address", "[ 地址 ]");
            doc.Template.DefineDataRegion("Tel", "[ 电话 ]");
            doc.Template.DefineDataRegion("Phone", "[ 手机 ]");
            doc.Template.DefineDataRegion("Sex", "[ 性别 ]");
            doc.Template.DefineDataRegion("Age", "[ 年龄 ]");
            doc.Template.DefineDataRegion("Email", "[ 邮箱 ]");
            doc.Template.DefineDataRegion("QQNo", "[ QQ号 ]");
            doc.Template.DefineDataRegion("MSNNo", "[ MSN号 ]");
    

    开发人员用服务器端程序定义好用户可使用的数据区域,用户在客户端编辑模版的时候就可以使用这些数据区域。注意,这里的代码中不需要写PO_ 开头,PageOffice会自动添加这个前缀。用户编辑模版时看到的数据区域管理窗口,如下图所示:

    1712

    左侧“待添加数据区域”列表是可以用户目前可以使用的数据区域,右侧“已添加数据区域”列表是文档中已经添加的数据区域。此窗口的实现代码已经由PageOffice封装完毕,无需开发人员自己写复杂的js+html代码去实现,并且此窗口中内容的样式是可以修改的,如果对那些样式不太满意,只需要对此窗口html代码的样式做简单的调整即可。用户编辑数据区域时的效果,如下图所示:

    1713

    1. 使用DefineDataTag定义数据标签,例如Java的代码如下:
    		WordDocument doc = new WordDocument();
            doc.getTemplate().defineDataTag("{ 甲方 }");
    		doc.getTemplate().defineDataTag("{ 乙方 }");
    		doc.getTemplate().defineDataTag("{ 担保人 }");
    		doc.getTemplate().defineDataTag("【 合同日期 】");
    		doc.getTemplate().defineDataTag("【 合同编号 】");
    

    或者用ASP.NET开发的代码如下:

            PageOffice.WordWriter.WordDocument doc = new PageOffice.WordWriter.WordDocument();
            doc.Template.DefineDataTag("{ 甲方 }");
            doc.Template.DefineDataTag("{ 乙方 }");
            doc.Template.DefineDataTag("{ 担保人 }");
            doc.Template.DefineDataTag("【 合同日期 】");
            doc.Template.DefineDataTag("【 合同编号 】");
    

    开发人员用服务器端程序定义好用户可使用的数据标签,用户在客户端编辑模版的时候就可以使用这些数据标签。用户编辑模版时看到的数据标签管理窗口,如下图所示:

    1714

    同数据区域一样,对此窗口的实现代码,PageOffice也已经封装完毕,无需开发人员自己写复杂的js+html代码去实现,并且此窗口中内容的样式是可以修改的,如果对那些样式不太满意,只需要简单的调整一下此窗口html代码中的样式即可。开发人员只管编写程序给数据标签赋值对应的数据,用户自己定义模版的样式、数据位置和数据的多少,用户可以使用全部的数据区域,也可以只使用部分, PageOffice在生成文件的时候,会自动忽略没有使用的数据标签,而不需要开发人员做任何代码的调整。

    与数据区域的管理不同的是,由于数据标签在文件中不是唯一的,所以不管在文件中添加了多少个数据标签,在数据标签管理窗口中的数据标签都是不会减少的。

    二. 使用PageOffice.WordWriter 命名空间中的对象填充数据到Word模版,动态生成文档:

    • PageOffice.WordWriter.WordDocument.OpenDataRegion 方法
    • PageOffice.WordWriter.WordDocument.OpenDataTag 方法

    开发人员只需要使用上面的两个方法,针对word模版编写程序,给所有的数据区域和数据标签赋值相应的数据即可,无需关心模版中到底使用了多少个数据区域和数据标签,那些Word模版中从来没有使用过的数据区域和数据标签,PageOffice会自动忽略,而无需开发人员做任何代码的修改,从而完美实现用户自定义模板的需求。

    Java开发的赋值代码如下:

    	    WordDocument doc = new WordDocument();
            doc.openDataRegion("Name").setValue("张三");        
            doc.openDataRegion("Age").setValue("21");  
    		……
            doc.openDataTag("{ 甲方公司名称 }").setValue("微软中国总部"); 
            doc.openDataTag("{ 乙方公司名称 }").setValue( "北京幻想科技公司"); 
    		……
            poCtrl.setWriter(doc);
    

    ASP.NET开发的赋值代码如下,

            PageOffice.WordWriter.WordDocument doc = new PageOffice.WordWriter.WordDocument();
            doc.OpenDataRegion("Name").Value = "张三";        
            doc.OpenDataRegion("Age").Value = "21";
    		……
            doc.OpenDataTag("{ 甲方公司名称 }").Value = "微软中国总部";
            doc.OpenDataTag("{ 乙方公司名称 }").Value = "北京幻想科技公司";
    		……
            PageOfficeCtrl1.SetWriter(doc);
    

    详细请参考PageOffice开发包里Samples4中的相关示例演示:
    二、30、用户自定义模板中数据区域(DataRegion)的位置(专业版、企业版)
    二、31、用户自定义模板中数据标签(DataTag)的位置(专业版、企业版)
    三、12、实现“用户自定义Word模板”动态生成文件(专业版、企业版)

    展开全文
  • java调用pageoffice生成word

    千次阅读 2018-05-08 12:17:16
    一、在开发OA办公或与文档相关的Web系统中,难免会遇到动态生成word文档的需求,为了解决工作中遇到导出word文档的需求,前一段时间上网找了一些资料,在word导出这方面有很多工具可以使用,jacob、poi、java2word、...

    一、在开发OA办公或与文档相关的Web系统中,难免会遇到动态生成word文档的需求,为了解决工作中遇到导出word文档的需求,前一段时间上网找了一些资料,在word导出这方面有很多工具可以使用,jacob、poi、java2word、itext。jacob要求服务器必须是windows操作系统,服务器上还必须安装office软件,果断放弃!poi需要针对doc和docx两种格式写不同的代码,增加了程序的复杂度。java2doc 是对 jacob 的封装,同样放弃!最后选定了用itext来导出word,网上一些资料说itext导出word功能太简单,通过试用之后,封装工具类,使用起来确实挺方便,但是导出的word文档在细节方面很难达到要求,比如:字体、行距、字体间距、首行缩进等。

    二、由于itext导出的word有各种各样的小问题,只能另找其他的解决方案,经过一个朋友推荐,可用PageOffice组件来导出word,其效果能与用户需求的word文档达到完美的一致,而且编程接口简单,调用很方便。总的来说就是制作模板(用PO_开头的书签作为数据占位符),然后编程调用PageOffice接口用真实数据替换模板中的占位符,最后生成word。下面看例子:

    1. 制作模板

      打开word模板插入书签:PO_Dept、PO_Name、PO_Cause、PO_Num、PO_Date,如下图所示

      

    2. 编写代码

      调用PageOffice接口,给word模板填充数据生成word文档:

    复制代码
     1     // 声明变量存储从数据库中读取的数据 2     String  docName = "", docDept = "", docCause = "", docNum = "", docDate = ""; 3     // 数据库数据读取操作(不同的数据库用不同的代码) 4     ResultSet rs = stmt.executeQuery("select * from leaveRecord where ID = " + id); 5     if (rs.next()) { 6         docName = rs.getString("Name"); 7         docDept = rs.getString("Dept"); 8         docCause = rs.getString("Cause"); 9         docNum = rs.getString("Num");10         docDate = rs.getString("SubmitTime");11     }12     rs.close();13     //创建PageOffice的WordDocument对象,操作Word文件14     WordDocument doc = new WordDocument();15     doc.openDataRegion("PO_name").setValue(docName);16     doc.openDataRegion("PO_dept").setValue(docDept);17     doc.openDataRegion("PO_cause").setValue(docCause);18     doc.openDataRegion("PO_num").setValue(docNum);19     doc.openDataRegion("PO_date").setValue(docDate);20     //创建PageOfficeCtrl对象打开文件21     PageOfficeCtrl poCtrl1 = new PageOfficeCtrl(request);22     poCtrl1.setServerPage(request.getContextPath()+"/poserver.zz"); //此行必须23     //获取数据对象24     poCtrl1.setWriter(doc);25     // 打开文档26     poCtrl1.webOpen("doc/template.doc", OpenModeType.docReadOnly, "Tom");
    复制代码

    3. 生成效果图

      

    三、 源码下载

      https://download.csdn.net/download/zi_wu_xian/10399345

    展开全文
  • PageOffice动态插入Word表格

    千次阅读 2018-09-11 15:29:16
    在项目的开发中会遇到这样的需求:要求在生成word文件的时候,在文件的指定位置生成不定数目的表格,每个表格的结构是一样的,但是需要根据数据库...解决思路: 使用PageOffice实现这个需求模型的话需要一个模板te...

    在项目的开发中会遇到这样的需求:要求在生成word文件的时候,在文件的指定位置生成不定数目的表格,每个表格的结构是一样的,但是需要根据数据库中的数据记录对每个表格填充不同的数据。上面所说的这个需求的基本模型可以认为是在word文件的指定位置开始生成工资条,因为工资条的特点就是每个人的表格都一样,只是表格里面的信息不一样。

    解决思路: 使用PageOffice实现这个需求模型的话需要一个模板template.doc,模板template.doc中包含了一个设计好的工资条的表格,在用PageOffice打开正式的文件(比如:zhengshi.doc)之前,用PageOffice的WordDocument对象获取到zhengshi.doc中要插入表格的那个指定位置,然后用DataRegion对象插入模板文件template.doc到这个位置,再使用Table对象把数据库中的值填充到表格中,接着在这个表格后面重复前面插入表格的方法插入新的表格和数据,直到所有的表格都生成完毕。

    详细效果请参考PageOffice开发包中Samples4示例:
    三、10、插入Word表格模板动态生成工资条

    示例说明: 为了便于分析PageOffice 实现动态插入表格的核心代码,此演示打开了一个空白的Word文件作为正式文件来生成工资单。编写代码在文件末尾循环动态创建数据区域,并在数据区域中插入template.doc和填充数据,最终在word文件中生成所有员工的工资条信息。

    1. 模板template.doc 的表格如下:
    员工编号 员工姓名 所属部门 工资 发放时间
    .        
    1. 示意代码如下:
    WordDocument doc = new WordDocument();
    DataRegion data = null;
    Table table = null;
    int i = 0;
    while (rs.next()) {
    	data = doc.createDataRegion("reg" + i,DataRegionInsertType.Before, "[End]");
    	data.setValue("[word]doc/template.doc[/word]");//插入模板中表格到文件中
    	//给单元格赋值
    	table = data.openTable(1);
    	table.openCellRC(2, 1).setValue(rs.getString("ID"));	
    	table.openCellRC(2, 2).setValue(rs.getString("UserName"));
    	table.openCellRC(2, 3).setValue(rs.getString("DeptName"));
    	table.openCellRC(2, 4).setValue(rs.getString("Salary"));
    	table.openCellRC(2, 7).setValue(rs.getString("DateTime"));
    	i++;
    }
    
    1. 在111.doc中生成的表格如下:
    员工编号 员工姓名 所属部门 工资 发放时间
    0001 张志强 技术 8000 2013-2-2
    员工编号 员工姓名 所属部门 工资 发放时间
    0002 李志 技术 9000 2013-2-2

    ……

    展开全文
  • java调用PageOffice生成word

    千次阅读 2018-05-09 14:49:41
    一、在开发OA办公或与文档相关的Web系统中,难免会遇到动态生成word文档的需求,为了解决工作中遇到导出word文档的需求,前一段时间上网找了一些资料,在word导出这方面有很多工具可以使用,jacob、poi、java2word、...
  • Word中的table是要借助数据区域(DataRegion)实现的,要求数据区域完整的包含了整个Table的内容,这样才可以通过数据区域控制和操作table。因此,要想使用table,...一、给Word模板中的Table手动插入书签。 1. 把...
  • 使用PageOffice---给Word中的Table赋值

    千次阅读 2018-09-14 09:55:45
    Word中的table是要借助数据区域(DataRegion)实现的,要求数据区域完整的包含了整个Table的内容,这样才可以通过数据区域控制和操作table。因此,要想使用table,则必须在word文件中插入书签(数据区域,即书签的...
  • 卓正PageOffice实现多个Word文件合并

    千次阅读 2018-09-12 14:21:46
    实际的项目需求中同样也会遇到合并word文件的情况,在此分两种情况分别介绍一下使用PageOffice解决此需求的实现方法。 1.把多个word文档分别插入到模板中指定数据区域生成一个Word文档。 首先介绍一下DataRegion的...
  • WordDocument对象的CreateDataRegion方法是为了实现用程序动态的在Word文档中添加一个数据区域而设计的,使用此方法可以在生成Word文档的时候更灵活,支持更多复杂格式的文件生成。 CreateDataRegion方法说明: ...
  • 最近做项目用到word、excel的在线浏览编辑功能,在网上找了很多的工具软件,一...此次开发用到的是卓正公司的pageoffice集成,需要购买使用。 简单介绍下Page Office: 1. 在web网页里打开、编辑、打印预览、打印W...
  • 一、在开发OA办公或与文档相关的Web系统中,难免会遇到动态生成word文档的需求,为了解决工作中遇到导出word文档的需求,前一段时间上网找了一些资料,在word导出这方面有很多工具可以使用,jacob、poi、java2word、...
  • 开发环境:JDK1.8、Eclipse、Sping Boot + Thymeleaf框架。一. 构建Sping Boot + Thymeleaf框架的项目(不再详述): 1. 新建一个maven project项目:demo。 2. 修改pom.xml配置,把项目配置为Spring Boot项目;...
  • 2019独角兽企业重金招聘Python工程师标准>>> ...
  • 很多情况下,软件开发者需要从数据库读取数据,然后将数据动态填充到手工预先准备好的Word模板文档里,这对于大批量生成拥有相同格式排版的正式文件非常有用,这个功能应用PageOffice的基本动态填充功能即可实现。...
  •  PageOffice能实现不同用户同时编辑一个Word文档的不同区域,且保存后不会相互影响和覆盖他人编辑修改的内容。  在线对Word文档进行编辑时,可能会出现多人同时访问、编辑同一个文档中不同区域的情况,例如多个...
1 2 3 4 5 ... 20
收藏数 2,157
精华内容 862
关键字:

pageoffice创建word模板