强大的.NET的word模版引擎NVeloDocx

在Javer的世界里,存在了一些看起来还不错的模版引擎,比如poi-tl看起来就很不错,但是那是人家Javer们专属的,与我们.Neter关系不大。.NET的世界里Word模版引擎完全是一个空白。

很多人不得不采用使用Word XML结合其他的模版引擎来实现根据Word模版生成报告,文档等等。但是这种方式存在很大的缺陷,那就是如果后期调整了哪怕一点点的Word格式,哪怕增加了几个文字都可能导致Word模版重新制作。

在我们免费开放的E6低代码平台中,我们提供了强大的打印模版,Excel导出模版等等的制作功能,但是却一直缺少高效的Word模版制作能力,这不论是在我们的客户还是普通用户中,都总是感觉缺少了啥。

为此推出了基于NVelocity和Open XML SDK的Word模版引擎:NVeloDocx。

基于NVeloDocx,用户完完全全可以在Word中直接编辑NVelocity标签和命令,实现Word模版开发,理论上来说,NVeloDocx支持NVelocity的全部语法,但是为了减少不必要的错误,我们做了一些特定的限制,比如${VariableName}是我们强烈推荐的方式,对于这种方式,我们会进行语法校验,提前发现不符合规范的写法。而$VariableName虽然也能工作,但不是我们推荐的方式。

基于NVeloDocx,用户可以使用#foreach循环,可以使用#if,可以使用#set定义临时变量,可以执行E6脚本,可以插图图片及图表等等。

基于NVeloDocx,我们最大限度地保留了用户编辑的Word格式,基本做到100%的格式还原,也就是说您编辑时是什么样,输出就是什么样。

基于NVeloDocx,您能够通过E6脚本做很多事情,比如四则混合运算,当前日期,当前用户等等都可以动态取数。

基于NVeloDocx,页眉页脚也都可以使用NVelocity语法,这就使得Word模版的定制几乎是全方位的了。

基于NVeloDocx,您可以将图片列表按多栏进行输出,这种需求在实际中非常常见。

为了让您更清晰了解NVeloDocx,相册是必不可少的了:

普通取数模版

输出

子表循环模版

输出

 图片多栏输出模版

 输出

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/851495.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

计算机网络7——网络安全4 防火墙和入侵检测

文章目录 一、系统安全:防火墙与入侵检测1、防火墙1)分组过滤路由器2)应用网关也称为代理服务器(proxy server), 二、一些未来的发展方向 一、系统安全:防火墙与入侵检测 恶意用户或软件通过网络对计算机系统的入侵或攻击已成为当今计算机安…

【计算机网络基础】OSI七层网络模型 TCPIP四层网络模型

文章目录 ISO介绍网络模型介绍OSI七层模型OSI七层模型介绍OSI七层特点一、TCP/IP四层模型介绍二、TCP/IP四层模型TCP/IP协议簇一次C/S通信 🌈你好呀!我是 山顶风景独好 🎈欢迎踏入我的博客世界,能与您在此邂逅,真是缘分…

光学基础 -- 光学术语之平场矫正、光学串扰、镜头渐晕

光学术语文档 1. 平场矫正 (Flat Field Correction) 定义: 平场矫正是一种图像处理技术,用于校正由于照明不均匀或相机感光元件响应不一致而引起的图像亮度不均匀现象。 用途: 平场矫正主要用于消除由于设备或环境引起的图像瑕疵,确保图像的亮度和对比…

气膜体育馆:现代城市体育设施的新选择—轻空间

在现代城市的建设中,体育设施的需求日益增加,而传统的体育馆建设周期长、成本高,已经难以满足快速发展的城市需求。作为一种新型的体育设施,气膜体育馆以其独特的优势和灵活的设计,正在成为城市体育设施的新选择。那么…

广东工业大学上岸经验分享!

这个系列会邀请上岸学长学姐进行经验分享~ 今天分享经验的同学,上岸广东工业大学。 经验分享 大家好,先介绍一下我的自身的情况吧,我本科是湖南末流一本通信工程专业,382分(6662123129)上岸广工。 考研中数学和专业课无疑是最…

探索乡村振兴新模式:发挥科技创新在乡村振兴中的引领作用,构建智慧农业体系,助力美丽乡村建设

随着科技的不断进步,乡村振兴工作正迎来前所未有的发展机遇。科技创新作为推动社会发展的重要力量,在乡村振兴中发挥着越来越重要的引领作用。本文旨在探讨如何发挥科技创新在乡村振兴中的引领作用,通过构建智慧农业体系,助力美丽…

pnpm : 无法加载文件 C:\Users\xxxxx\AppData\Roaming\npm\pnpm.ps1,因为在此系统上禁止运行脚本。

vscode中执行pnpm install的时候,直接报了上面的错误。 解决: 然后输入:set-ExecutionPolicy RemoteSigned,按回车,然后根据提示,我们选A。 然后回车。 这样我们再次回到vscode中的我们就会发现可以了。 …

Android程序设计课程教学解决方案

引言 随着信息技术的飞速发展,智能手机和移动应用已成为现代生活不可或缺的一部分。Android作为全球最大的移动操作系统,其开发人才需求量巨大。高职院校作为培养高素质技能人才的重要基地,如何在Android程序设计课程中有效提升学生的实践能力…

WWDC24 快速回顾

今天凌晨,苹果公司在2024年全球开发者大会(WWDC24)上,发布了一系列的系统更新。然而,对于期待苹果带来突破性创新的消费者来说,今年的大会似乎并没有达到预期的震撼效果。 下面让我看看,苹果都带…

WT32-ETH01作为TCP Server进行通讯

目录 模块简介WT32-ETH01作为TCP Server设置W5500作为TCP Client设置连接并进行通讯总结 模块简介 WT32-ETH01网关主要功能特点: 采用双核Xtensa⑧32-bit LX6 MCU.集成SPI flash 32Mbit\ SRAM 520KB 支持TCP Server. TCP Client, UDP Server. UDP Client工作模式 支持串口、wi…

C#之EntityFramework的应用

目录 1,名词概述。 2,实体数据模型EDM介绍。 3,规范函数。 4,查看Linq转换成的SQL语句。 5,数据的增删改查。 5.1,数据查询 5.2,数据插入 5.3,数据更新 5.4,数据…

# RocketMQ 实战:模拟电商网站场景综合案例(六)

RocketMQ 实战:模拟电商网站场景综合案例(六) 一、RocketMQ 实战 :项目公共类介绍 1、ID 生成器 :IDWorker:Twitter 雪花算法。 在 shop-common 工程模块中,IDWorker.java 是 ID 生成器公共类…

前端加载 动画特效

效果图: 完整代码: <!DOCTYPE html> <html> <head><meta charset="UTF-8" /><title>加载动画</title><style type="text/css">/* 设置页面背景颜色 */body {background: #ECF0F1;}/* 定义加载动画容器的样式…

【SQL边干边学系列】05高级问题

文章目录 前言回顾高级问题32.高价值客户33.高价值的客户-总订单数34.高价值的客户-带有折扣35.月末订单36.具有许多详细信息行的订单 答案32.高价值客户33.高价值的客户-总订单数34.高价值的客户-带有折扣35.月末订单36.具有许多详细信息行的订单 未完待续 前言 该系列教程&am…

电子书资源汇总

更多资源关注公众号&#xff1a;阿宇的编程之旅&#xff0c;回复‘书签’获取 FreeMbook Search 网站名称&#xff1a;FreeMbook Search网址&#xff1a;FreeMbook Search介绍&#xff1a;一个提供电子书搜索和下载服务的网站。 超星书籍检索工具 网站名称&#xff1a;超星…

SSRF 漏洞检测:防范未然的关键

服务器端请求伪造&#xff08;SSRF&#xff09;是一种隐蔽且危险的安全漏洞&#xff0c;它允许攻击者欺骗服务器向其他服务器发送请求&#xff0c;从而访问或控制未经授权的系统。及时发现并修复 SSRF 漏洞对于保障系统安全至关重要。本文将介绍 SSRF 漏洞的检测方法&#xff0…

新品发布 | 捷云等保一体机2.0全新上市,助力中小企业破解等保难题

等保2.0时代&#xff0c;随着网络威胁不断复杂化和组织化&#xff0c;作为网络安全“弱势群体”的中小企业&#xff0c;等保建设工作正面临着安全意识、管理、人才、资金捉襟见肘等问题&#xff0c;主要体现在以下两个方面&#xff1a; 等保建设流程复杂 中小企事业单位缺乏专…

jvm学习笔记(二) ----- 垃圾回收

GC 一、判定对象是否是垃圾1.引用计数法2.可达性分析算法 二、垃圾回收算法1.标记清除2.标记整理3. 复制4. 分代垃圾回收1.尝试在伊甸园分配2.大对象直接晋升至老年代3.多次存活的对象4.老年代连续空间不足&#xff0c;触发 Full GC 链接: jvm学习笔记(一) ----- JAVA 内存 链接…

Spigot开发中的事件与监听器的关系

介绍Spigot开发中的监听器 在Spigot插件开发中&#xff0c;监听器&#xff08;Listener&#xff09;是一个非常重要的概念。它们允许你捕捉和处理各种游戏事件&#xff0c;使你的插件能够对玩家的行为、游戏环境的变化等做出响应。本文将详细介绍监听器是什么、它们的用途&…

select模块

Python标准库中的select模块&#xff0c;这个模块提供了select函数&#xff0c;它能够监视文件描述符&#xff0c;等待它们变得“就绪”&#xff08;即可读、可写或发生异常&#xff09;。这在处理I/O、网络通信或异步操作时非常有用。 select模块的基本使用 导入模块 impor…