网站首页 > 精选教程 正文
前言:
下面所有的分析暂时都是基于怎么应用于我们免费开发的低代码开发平台,给用户提供可视化的Word报表模板。
为什么是NVelocity?
因为NVelocity语法简洁且足够简单,但是功能却足够强大,我们需要记住的无外乎就是这么几个常用的命令:#foreach,#if,#set,#odd,#even,#break,#stop等等。而${变量名}这样的变量都是由用户提供的,我们可以提供自己的方法用于扩展NVelocity的变量。
当然,最主要是相对于Java来说.NET可选且强大的模板引擎不多啊!
为什么是Open XML SDK呢?
因为Open XML SDK开源免费,且能对微软Office无缝操作。其他好用的商业组件的价格实在是太贵,针对中小企业提供软件产品的我们实在是用不起。
Open XML操作Word常用的元素:
Paragraph、Run、Text,Drawing。一个Paragraph可以包括多个Run,而一个Run理论上也可以包括多个Text,而我们在Word中编辑的文字信息就是在Text下的。Drawing(图片)又往往在Run下的。
要点分析:
由于当前考虑的是应用于我们的低代码开发平台,所以暂时不会考虑太多的扩展。
1、Word实在是太过于灵活了,同一个段落,哪怕同一个句子的内容,都可能属于不同的Run。比如下面这个foreach循环命令,本应该在同一个Run中,但是实际中很可能被拆分到多个Run。
2、同一个段落中的不同部分可能有不同的格式,我们往往需要生成的Word中能够保留格式,如下图:
4、表格处理:
有时候我们需要这样的表格:这种表格相对比较简单,和普通文本的处理方式相同即可。
而有时候我们又需要这样的表格:能够通过foreach生成多行,还需要能够保留每个单元格的格式。
4、页眉页脚的处理;
页眉中中也可能有NVelocity命令,那就意味着页眉中也可能有for循环,有if条件,有变量等等。
5、插入图片;
图片可能是一张孤零零的图片,也可能是下面这样的按多列输出的表格。所以图片处理其实更为复杂一些。
6、计算:
比如报表要加上报表时间;
比如对表格做合计;
比如对金额做大写转换;
所以要实现一个灵活强大的Word模板引擎,要考虑的东西很多,但是如果实现了,那应该就可以骄傲地来一句“遥遥领先”了吧?
猜你喜欢
- 2025-07-03 教师求职简历模板word下载可编辑(教师求职简历表模板)
- 2025-07-03 教你用Word制作田字格和米字格字帖模板
- 2025-07-03 EXCEL免费财务报表,word财务分析报告模版,你值得拥有
- 2025-07-03 word插入横版页面妙招,排版设置轻松简单,常用问题快手解决
- 2025-07-03 【472】安全台账参考模板Word可编辑
- 2025-07-03 Word模板修改方法(word怎么改模板格式)
- 2025-07-03 技术支持投标书招标书格式模板word版本可直接复制使用
- 2025-07-03 别再不停按快捷键了,多处内容的复制粘贴,在 Word 中可以批量操作
- 2025-07-03 word双文档快捷比较技巧,一键查找不同,高亮显示眼睛不疼
- 2025-07-03 .Net开发的跨平台Word模板引擎(.net5 跨平台ui)
你 发表评论:
欢迎- 最近发表
- 标签列表
-
- nginx反向代理 (57)
- nginx日志 (56)
- nginx限制ip访问 (62)
- mac安装nginx (55)
- java和mysql (59)
- java中final (62)
- win10安装java (72)
- java启动参数 (64)
- java链表反转 (64)
- 字符串反转java (72)
- java逻辑运算符 (59)
- java 请求url (65)
- java信号量 (57)
- java定义枚举 (59)
- java字符串压缩 (56)
- java中的反射 (59)
- java 三维数组 (55)
- java插入排序 (68)
- java线程的状态 (62)
- java异步调用 (55)
- java中的异常处理 (62)
- java锁机制 (54)
- java静态内部类 (55)
- java怎么添加图片 (60)
- java 权限框架 (55)
本文暂时没有评论,来添加一个吧(●'◡'●)