因为本人长期从事Oa相关项目的开发,所以处理word文档,Pdf,Excel等是在所难免的。

1.需求      处理Excel 能够用jxl        或者poi

2需求     用户在系统上填写信息,保存后导出标准的word文档。用户在系统上填写的信息我们用富文本编辑工具kindEditor。这个插件能够将用户从word文档拷贝的表格标签保存。可是图片信息须要另行上传。 如今问题出来了,我们要将这些包括图片。表格,特殊符号的东东生成word文档。

假设是单纯的没有特殊格字符。图片等信息,假设要生成word文档的时候能够用java+Freemark 模版的做法,详细作法

用word编辑好模版。将模版另存为 office 2003 xml 格式,然后打上对应的标签,最后将模版后缀改为.ftl即freemarker模版后缀就可以。

假设有内容中有图片。并且图片位置不固定,这样是须要用java + velocity 模版的做法。详细流程将编辑好的word模版另存为.mht即单网页文档。

最后调整后缀为.vm就可以。

可是这个处理过程图片是保存不了的, 这个须要配合java2word。利用java+velocity 生成word文档。在往文档里面插入内容的时候能够用正則表達式替换图片标签为特殊的字符串。等到文档声称完成后,採用java2word工具里面的查找替换功能将图片插入咱们内容增加的特殊字符位置。

假设想要效果标准的word文档,能够用itext 我用的是itext 2.1.7 一共三个包,当中一个是亚洲包,这个是支持中文的,利用litext能够用代码画出标准的word文档,特别是对待分页以及表格格式要求严格的用户。

上面说的java + velocity是暂时方案。事实上最简单的解决富文本编辑的问题时用插件,我们为客户购买了千航 即NTKO的office 编辑插件,我们买的是跨平台版的。这个插件能够

让用户在线编辑word文档并将文档保存到数据库。可是用这个插件可能系统执行初期,须要花费非常大精力去运维。由于用户电脑的环境不是咱们开发者可以左右的。等到一个周期过去之后效果基本上会好起来。

java 处理word文档 (含图片,表格内容)的更多相关文章

  1. [转载]java获取word文档的条目化内容

    在开发Web办公系统或文档系统时,PageOffice组件是众所周知的在线处理微软word/ppt/excel文档的强大工具,它对WORD文档的各种处理在API层面进行了封装,屏蔽了Office VB ...

  2. [原创]java获取word文档的条目化内容

    在开发Web办公系统或文档系统时,PageOffice组件是众所周知的在线处理微软word/ppt/excel文档的强大工具,它对WORD文档的各种处理在API层面进行了封装,屏蔽了Office VB ...

  3. 2018-10-04 [日常]用Python读取word文档中的表格并比较

    最近想对某些word文档(docx)的表格内容作比较, 于是找了一下相关工具. 参考Automate the Boring Stuff with Python中的word部分, 试用了python-d ...

  4. 使用Java POI来选择提取Word文档中的表格信息

    通过使用Java POI来提取Word(1992)文档中的表格信息,其中POI支持不同的ms文档类型,在具体操作中需要注意.本文主要是通过POI来提取微软2003文档中的表格信息,具体code如下(事 ...

  5. C# 在word文档中复制表格并粘帖到下一页中

    C# 在word文档中复制表格并粘帖到下一页中 object oMissing = System.Reflection.Missing.Value;            Microsoft.Offi ...

  6. 判断pdf、word文档、图片等文件类型(格式)、大小的简便方法

    判断pdf.word文档.图片等文件类型(格式).大小的简便方法 很久没发文了,今天有时间就写一下吧. 关于上传文件,通常我们都需要对其进行判断,限制上传的类型,如果是上传图片,我们甚至会把图片转化成 ...

  7. 使用Java生成word文档(附源码)

    当我们使用Java生成word文档时,通常首先会想到iText和POI,这是因为我们习惯了使用这两种方法操作Excel,自然而然的也想使用这种生成word文档.但是当我们需要动态生成word时,通常不 ...

  8. 利用java从docx文档中提取文本内容

    利用java从docx文档中提取文本内容 使用Apache的第三方jar包,地址为https://poi.apache.org/ docx文档内容如图: 目录结构: 每个文件夹的名称为日期加上来源,例 ...

  9. java 在MySQL中存储文件,读取文件(包括图片,word文档,excel表格,ppt,zip文件等)

    转自:https://blog.csdn.net/u014475796/article/details/49893261 在设计到数据库的开发中,难免要将图片或文档文件(如word)插入到数据库中的情 ...

随机推荐

  1. appium ios端自动化测试配置

    一.安装环境介绍macOS 10.12.4 Xcode 8.3.2 适用机型:iOS9 及以上机型 二.Appium源码安装Xcode升级8.2之后不再支持UIAutomation,转而使用XCUIT ...

  2. [agc008d]kth-k

    题意: 给你一个长度为N的整数序列X,构造一个整数序列a满足: 1.a的长度为$N^2$,且1~N中每个数字恰好出现N次: 2.数字i在a中第i次出现的位置为$X_i$: 如果不能构造输出“No”,否 ...

  3. BZOJ 2555 SubString(LCT+后缀树)

    喜闻乐见的LCT+SAM 此题要求动态插入,直接上后缀树.然后询问其实就是求一个节点的子树后缀结束节点的个数. 因为建立后缀树需要插入和删除,就直接上LCT.每次加入一个点,把它到根的路径加一 (现在 ...

  4. 【转载】02-PowerDesigner的下载及安装

    原创路径:https://blog.csdn.net/ruyu00/article/details/79842807 一.下载 下载路径:https://pan.baidu.com/s/1WD7QHT ...

  5. 题解 洛谷 P3381 【【模板】最小费用最大流】

    发了网络流,再来一发费用流 能做费用流的,网络流自然做得来,但在这还是不要脸的安利一下自己的博客(里面也有网络流的题解): 点我 扯远了... 费用流,就是在不炸水管的情况下求源点到汇点的最小费用. ...

  6. python set元素访问

    python中集合set主要利用其唯一性,及并集|.交集&等操作,但不可以直接通过下标进行访问,必须访问时可以将其转换成list再访问 x={1,2,5} y=list(x) a=y[1] a ...

  7. 05003_Linux的基本命令

    1.目录结构 Linux的目录结构:Linux各目录及每个目录的详细介绍 链接:Linux各目录及每个目录的详细介绍 密码:84ab 2.LInux的基本命令 (1)目录切换命令 ①root是超级管理 ...

  8. FZU 1980 AbOr's story

    AbOr's story Time Limit: 1000ms Memory Limit: 32768KB This problem will be judged on FZU. Original I ...

  9. inux 虚拟机桥接模式 静态ip设置,桥接才是王道

    修改/etc/sysconfig/network-scripts  目录下的 ifcfg-eth0 [root@yangcb network-scripts]# cat ifcfg-eth0 DEVI ...

  10. [Python]Use Flask-Admin with PostgreSQL

    This code recipe gives you an idea of how to use Flask-Admin with postgresql database. from flask im ...