学习Spire.Doc 13.3.0版本的科学实践(二)
Spire Office
admin 发布于:2025-04-26 15:58:25
阅读:loading
Spire是e-iceblue公司的一个产品系列,专注于高效、功能丰富的文档处理解决方案。e-iceblue成立于2009年,致力于为开发者提供简单易用的文档处理工具,以满足各种业务需求。Spire 产品广泛应用于企业办公、教育、金融等多个行业。e-iceblue旗下有多个产品系列,也支持多种编程语言,如:NET、C++、Java、Python、JavaScript、Android等,本次以Spire.Office for Java支持的产品种类为例,经过一些时间的分析与摸索,实现它的组件应用的无水印和页数限制,以时下最新的版本为例摸索出它的科学实现分享。特别说明:只为单纯的学习摸索与自我突破,商业软件请勿直接使用于生产环境(购买商业授权)。
Spire.Doc for Java 是一款专业的 Java Word 组件,开发人员使用它可以轻松地将 Word 文档创建、读取、编辑、转换和打印等功能集成到自己的 Java 应用程序中。作为一款完全独立的组件,Spire.Doc for Java 的运行环境无需安装 Microsoft Office。同时兼容大部分国产操作系统,能够在中标麒麟和中科方德等国产操作系统中正常运行。Spire.Doc for Java 支持 WPS 生成的 Word 格式文档 (.wps 和 .wpt)。
Spire.Doc for Java 能执行多种 Word 文档处理任务,包括生成、读取、转换和打印 Word 文档,插入图片,添加页眉和页脚,创建表格,添加表单域和邮件合并域,添加书签,添加文本和图片水印,设置背景颜色和图片,内容复制,添加脚注和尾注,添加超链接、添加数字签名,加密和解密 Word 文档,修改、替换、读取、添加、回复、删除和提取批注,添加形状,添加图像印章等。
(1)仅需 Spire.Doc for Java,无需 Microsoft Office
Spire.Doc for Java 是一款完全独立的 Java Word 组件,它的运行环境无需安装 Microsoft Office。
(2)高质量的文档转换
Spire.Doc for Java 支持将常见文件格式例如 HTML、Excel、RTF、ODT、TXT、WordML、WordXML 和 Markdown 等高质量的转换为 Word 文档,也支持将 Word 文档高质量的导出为其他文件格式,例如 PDF、Excel、Image、OFD、EPUB、HTML、XPS、XML、RTF、TXT、ODT、WordML 和 WordXML 等。此外,它还支持将 Doc 和 Docx 相互转换,将 HTML、WPS、XML 和 Markdown 转换成 PDF,将 HTML 转换成图片、XML 和 XPS,将 RTF 转换为 HTML、图片。
(3)多样化的 Word 文档处理功能
Spire.Doc for Java 支持处理几乎所有的 Word 文档元素,包括页面、节、页眉和页脚、脚注、尾注、段落、项目符号和编号、表格、文本、域、超链接、书签、样式、背景设置、打印功能、数字签名、文档设置和文档保护等。同时,也支持形状、文本框、注释、图片、OLE 对象和内容控件等。
(4)易于集成
Spire.Doc for Java 可以轻易地被集成到 Java 应用程序中。
基于Spire.Doc实现一个简单的文档格式转换示例,在我看来就足够了,至于它的更多/更强大/更专业的API及高级用法我就不摸索了,本次基于“spire.doc-13.3.0.jar”版本,仅对它的水印和文档页数进行摸索实践,将一个有,参考如下代码:
public class HelloWorldDoc {
public static void main(String[] args) {
Document document = new Document();
document.loadFromStream(HelloWorldDoc.class.getResourceAsStream("/Hello.docx") , FileFormat.Docx);
document.saveToFile("output/doc/Doc2Pdf.pdf" , FileFormat.PDF);
document.saveToFile("output/doc/Doc2Html.html" , FileFormat.Html);
document.close();
}
}
【示例说明】
(1)Hello.docx文档含有32页的内容;
(2)将Docx文档转换为PDF格式;
(3)将Docx文档转换为HTML格式;
(4)如果使用前文中提及的“11.4.2”版本进行实践,则得到的控制台有报错,虽然文档PDF已转换,但是底部的页脚数量不准确;
(源Docx文档)
(Docx转换PDF)
(Docx转换HTML)
(1)Spire.Office不是开源免费的使用,Github上有示例项目,包含了大量的示例,示例的结果就是生成了一些《Evaluation Warning》警告、水印、内容页数限制、内容文本限制等;
(2)Spire.Office公司旗下有许多编程语言支持的多种Office文档产品,都是商业付费版本,常见于各种文档格式文件的操作,都需要商业授权使用官网也有更多更详细的说明;
(3)科学实现将是改动jar中class的方式,有必要说的是这个jar文件中并未使用RSA/SF的文件class加密,也可以可以不用改动jar文件的,只需要将改动的class文件单独放置在一个jar文件中,运行是使用java -cp或jar -jar命令时优先加载改动的class,最后加载原始jar中class的形式即可实现不改动jar文件;
(4)Spire.Office下辖的各个产品组件为独立存在的各个产品,Office是提取全集产品中的汇总,囊括了全部产品组件的范围,对内提供统一的版本管理,对外提供一个产品范围体系;
(5)Spire的官网有提供Free Spire.Office for Java免费版本,免费版有篇幅限制,除了文档篇幅限制外,没有任何警告信息,但官方仅对免费版进行不定期维护,不提供技术服务或其他支持服务;
(6)本次学习摸索的目的是基于专业版进行的专业实践,实践的结果就是无水印,无内容页数限制;
(7)特别说明:只为单纯的学习摸索与自我突破,商业软件请勿直接使用于生产环境(购买商业授权);
(8)示例与相关文件下载:《Spire.Doc示例相关下载.zip》,注:下载并不包含具体的科学实现部分,只是源文件与示例输出文件;
点赞