Word控件Spire.Doc 【打印】教程(1):通过 5 个步骤以编程方式打印 Word 文档

news2024/12/25 23:53:37

Spire.Doc for .NET是一款专门对 Word 文档进行操作的 .NET 类库。在于帮助开发人员无需安装 Microsoft Word情况下,轻松快捷高效地创建、编辑、转换和打印 Microsoft Word 文档。拥有近10年专业开发经验Spire系列办公文档开发工具,专注于创建、编辑、转换和打印Word/PDF/Excel等格式文件处理,小巧便捷。 

E-iceblue 功能类库Spire 系列文档处理组件均由中国本土团队研发,不依赖第三方软件,不受其他国家的技术或法律法规限制,同时适配国产操作系统如中科方德、中标麒麟等,兼容国产文档处理软件 WPS(如 .wps/.et/.dps 等格式

Spire.Doc for.NET 最新下载(qun:767755948)icon-default.png?t=N3I4https://www.evget.com/product/3368/download

背景

本技术文章主要讨论 Spire.Doc 如何实现其打印功能的方法。微软开发的Word文档现在广泛用于办公用户。当人们需要通过打印机打印Word文档时,这是一种常见的需求。而对于程序员来说,将word文档加载到程序中并将其删除并不是一项简单的任务。特别是在卷筒纸打印方面,没有交互很难实现后台打印。

针对这两点,我们开发了Spire.Doc for .NET,通过它,您可以轻松地将word文档加载到.NET应用程序中,并将其完全打印出来。实际上,它可以应用于控制台平台,WinForm和 Asp.net 应用程序。

方法

以下方法基于控制台平台的示例。首先,您可以单击此处下载 Spire.Doc for .NET。以下是原始word文档的屏幕截图:

步骤1:在Visual Studio中创建一个新项目。然后将其目标框架设置为 .NET 框架 2.0。添加引用程序集“System.windows.forms.dll, System.Drawing.dll, Spire.Doc.dll”

步骤2:实例化Spire.Doc.Document的一个对象,并在项目中调用其LoadFromFile方法以加载Word文档。

[C#]

Document doc = new Document();
doc.LoadFromFile("sample.doc");

步骤3:实例化System.Windows.Forms.PrintDialog的对象并设置其一些相对属性。在这里,必须注意的一个关键点是,在此过程中,您应该将System.Windows.Forms.PrintDialog对象与Spire.Doc.Document相关联。

[C#]

PrintDialog dialog = new PrintDialog();
dialog.AllowPrintToFile = true;
dialog.AllowCurrentPage = true;
dialog.AllowSomePages = true;
dialog.UseEXDialog = true;
doc.PrintDialog = dialog;

步骤4:开始后台打印。您应该通过使用 Spire.Doc.Document 的 PrintDocument 属性获取 System.Drawing.Printing.PrintDocument 对象。现在,您可以使用默认打印机打印整个页面,而无需交互。(此打印模式也适用于网页打印)

[C#]

PrintDocument printDoc = doc.PrintDocument;
printDoc.Print();

步骤5:实现交互打印。调用 System.Windows.Forms.PrintDialog 的 ShowDialog 方法来打印 Word 文档

[C#]

if (dialog.ShowDialog() == DialogResult.OK) { printDoc.Print(); }

以下屏幕截图显示了将 Word 文档打印为 XPS 格式后的结果:

这是贯穿此过程的完整 c# 代码:

[C#]

using System;
using System.Collections.Generic;
using System.Text;
using Spire.Doc;
using System.Windows.Forms;
using System.Drawing.Printing;

namespace Doc_Print
{
class Program
{
static void Main(string[] args)
{
// Instantiated an object of Spire.Doc.Document
Document doc = new Document();
//Load word document
doc.LoadFromFile("sample.doc");
// Instantiated System.Windows.Forms.PrintDialog object .
PrintDialog dialog = new PrintDialog();
dialog.AllowPrintToFile = true;
dialog.AllowCurrentPage = true;
dialog.AllowSomePages = true;
dialog.UseEXDialog = true;
// associate System.Windows.Forms.PrintDialog object with Spire.Doc.Document
doc.PrintDialog = dialog;
PrintDocument printDoc = doc.PrintDocument;
//Background printing
printDoc.Print();
//Interaction printing
if (dialog.ShowDialog() == DialogResult.OK)
{
printDoc.Print();
}

}
}
}

以上便是通过 5 个步骤以编程方式打印 Word 文档的教程,如果您有其他问题也可以继续浏览本系列文章,获取相关教程。

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

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

相关文章

04-菜单维护 尚筹网

在【菜单维护】页面,通过树形结构,使用zTree显示整个菜单。 准备工作 一、在数据库创建菜单表: #使用project_rowd表 use project_rowd;#创建菜单的数据库表 create table t_menu (id int(11) not null auto_increment, pid int(11), nam…

【蓝桥杯选拔赛真题55】Scratch昼夜变换 少儿编程scratch图形化编程 蓝桥杯选拔赛真题讲解

目录 scratch昼夜变换 一、题目要求 编程实现 二、案例分析 1、角色分析

5月3日 7H|5月4日 9H↕️|时间轴复盘

2:00-9:00 起床 9:00-9:30 洗漱到教室 9:30-9:40 泡豆浆 9:40-11:40 语法 【2h】 11:40-12:16 午饭回教室 12:16-14:30 健身 14:30-15:30 午睡 15:30-17:00 不背单词 【1.5h】 17:00-18:13 三篇阅读 【1h13min】 18:13-18:57 晚饭 19:00-19:15 …

Flink从入门到精通之-08多流转换

Flink从入门到精通之-08多流转换 无论是基本的简单转换和聚合,还是基于窗口的计算,我们都是针对一条流上的数据进行处理的。而在实际应用中,可能需要将不同来源的数据连接合并在一起处理,也有可能需要将一条流拆分开,…

jdk8和jdk17同时存在时的【环境配置】

一、先进行环境下载: jdk8:https://www.oracle.com/cn/java/technologies/javase/javase8u211-later-archive-downloads.html jdk17:https://www.oracle.com/java/technologies/javase/jdk17-archive-downloads.html PS:jdk8在下载结束,安装…

1. 深入理解Mysql索引底层数据库与算法

MySQL性能调优 1. 索引数据结构红黑树,Hash,B树详解1.1 什么是索引?1.2 二叉树1.3 红黑树1.4 B-Tree1.5 BTree(B-Tree变种)1.6 Hash索引 2. 存储引擎2.1 MyISAM索引2.2 INNODB 3. 索引最左前缀原理 本文是按照自己的理解进行笔记总结&#xf…

java版鸿鹄工程项目管理系统 Spring Cloud+Spring Boot+前后端分离构建工程项目管理系统源代码

鸿鹄工程项目管理系统 Spring CloudSpring BootMybatisVueElementUI前后端分离构建工程项目管理系统 1. 项目背景 一、随着公司的快速发展,企业人员和经营规模不断壮大。为了提高工程管理效率、减轻劳动强度、提高信息处理速度和准确性,公司对内部工程管…

音乐游戏《Tiles Hop》核心功能

文章目录 一、 介绍二、 进入游戏三、 初始化四、 游戏管理器五、 控制小球六、 音乐节奏编码 一、 介绍 音乐游戏《Tiles Hop》,随着音乐节奏进行跳跃 球在一定的速度下,特定的时候踩到砖块,同时正好和音乐的节奏要配合上; LRC歌词编辑器:…

聊聊JavaScript性能优化!

随着软件开发行业的发展,性能优化是一个不可避免的话题,那么什么样的行为才能算作性能优化呢?本质上来说,任何能提高运行效率,降低运行开销的行为,都可以算作性能优化的操作。那么JavaScript语言的优化从理…

linux网络管理,设置主机名

目录标题 使用nmtui配置(图形化设置)使用nmcli设置修改配置文件cockpit配置示意图使用ip命令配置临时生效的网络连接设置主机名查看主机名修改主机名 使用nmtui配置(图形化设置) [rootkongd ~]# nmcli c reload [rootkongd ~]# nm…

项目分析v1

用户: 登录: 不能重复登录。 在服务端使用一个hashset记录用户的登录状态,如果用户id不在集合里面,就可以登录,登录时将用户id添加到集合中。用户下线时,将set中的元素删除。 登录成功后,服务端…

深入了解SpringMVC框架,探究其优缺点、作用以及使用方法

一、什么是Spring MVC SpringMVC是一种基于Java的Web框架,与Spring框架紧密结合,用于开发具备WebApp特性的Java应用程序。Spring MVC是Spring Framework的一部分,因此它具有与Spring框架相同的特性和理念。 二、SpringMVC的优缺点 1. 优点…

const、指针、引用

一、const和指针: 分类: 1.1 指向常量的指针 上面的两种形式所表示的含义为:pt的指向可以随便修改,但pt所 指向的东西不得通过pt修改。 1.2 指向变量的常指针 指针的指向不允许改动,但指向的东西可以修改。&#…

1.4W字!让我带你读懂springmvc的世界!

目录 一.前提了解 1.tomcat和servlet的关系? 2.springmvc想要实现web开发必须满足的条件是什么? 二.什么是SpringMVC 三.基于SpringMVC创建web项目 ①创建项目并选择依赖 ②设置热部署(部分代码改动不需要手动重新run即可生效&#xff0…

工地烟火AI监控识别分析系统 yolov7

工地烟火AI监控识别分析系统通过yolov7网络模型技术,工地烟火AI监控识别分析系统对工地或者厂区现场监控区域内的烟火进行实时分析报警。YOLOv7 的发展方向与当前主流的实时目标检测器不同,研究团队希望它能够同时支持移动 GPU 和从边缘到云端的 GPU 设备…

请求重定向(forward)和请求转发(redirect)的区别详解(看这一篇就够了)

在Java中进行页面跳转的方式有两种:重定向和请求转发,但是两者的内部实现是完全不一样的,主要区别分为以下5种: 定义不同请求方式不同数据共享不同最终 URL 地址不同代码实现不同 1,定义不同 请求重定向(f…

五面阿里Java岗,从小公司到阿里的面经总结

​​​​​​​ 面试 笔试常见的问题 面试常见的问题下面给的面试题基本都有。 1 手写代码:手写代码一般会考单例、排序、线程、消费者生产者 排序。 2 写SQL很常考察group by、内连接和外连接 2.面试1-5面总结 1)让你自我介绍 2)做两道算法…

【软考高级】2022年系统分析师综合知识

1.( )是从系统的应用领域而不是从系统用户的特定需要中得出的,它们可以是新的功能性需求,或者是对已有功能性需求的约束,或者是陈述特定的计算必须遵守的要求。 A.功能性需求 B. 用户需求 C.产品需求 D.领域需求 2.对于安全关键系…

红黑树理论详解与Java实现

文章目录 基本定义五大性质红黑树和2-3-4树的关系红黑树和2-3-4树各结点对应关系添加结点到红黑树注意事项添加的所有情况 添加导致不平衡叔父节点不是红色节点(祖父节点为红色)添加不平衡LL/RR添加不平衡LR/RL 叔父节点是红色节点(祖父节点为…

知识图谱学习笔记——(四)知识图谱的抽取与构建

一、知识学习 声明:知识学习中本文主体按照浙江大学陈华钧教授的《知识图谱》公开课讲义进行介绍,并个别地方加入了自己的注释和思考,希望大家尊重陈华钧教授的知识产权,在使用时加上出处。感谢陈华钧教授。 (一&…