Word处理控件Aspose.Words功能演示:使用C#创建MS Word文档

news2024/9/28 10:50:14

Aspose.Words是一种高级Word文档处理API,用于执行各种文档管理和操作任务。API支持生成,修改,转换,呈现和打印文档,而无需在跨平台应用程序中直接使用Microsoft Word。

Aspose API支持流行文件格式处理,并允许将各类文档导出或转换为固定布局文件格式和最常用的图像/多媒体格式。

您是否正在寻找一种自动化 Microsoft Word 功能(即创建、更新和转换 Word 文档)的解决方案?如果是,本文将通过演示如何在没有 MS office 的情况下使用 C# 创建 Word 文档,让您的生活更轻松。此外,您还将学习如何通过几个简单的步骤编辑现有的 Word 文档、转换 DOC/DOCX 文件或解析文档。您还将获得一个易于集成的代码示例来实现每个功能。

企业对 MS Word 文档自动化和报告生成的需求很高。Aspose.Words for .NET是一个完整且功能丰富的 Word 自动化解决方案,用于在这种情况下创建、编辑或分析 Word 文档。本文介绍了使用 C# 以编程方式生成和操作 Word 文档所需的所有基本功能。阅读本文后,您将能够:

  • 用于自动化 MS Word 的 C# 库
  • 使用 C# 创建 Word(.doc、.docx)文档
  • 使用 C# 编辑或修改 Word 文档
  • 使用 C# 转换 Word 文档
  • 使用 C# 解析 Word 文档

用于自动化 MS Word 的 C# 库

Aspose.Words for .NET是一个功能强大的库,具有一系列创建和操作 MS Word 文档的功能。在创建新的 Word 文档之前,请确保将此库安装到您的应用程序中。您可以从此处下载库。另一种选择是通过 Visual Studio 中的 NuGet 包管理器或包管理器控制台安装它。

PM> Install-Package Aspose.Words

如何在 C# 中创建 Word 文档

库的DocumentBuilder类包含创建 Word 文档的所有方法和属性。结合Document类,DocumentBuilder支持插入元素,例如文本/段落、复选框、表格、列表、图像和 Word 文档可以包含的其他对象。此外,您可以使用此类指定字体和其他格式设置选项。

以下是在 C# 中创建新 Word 文档的简单步骤。

  • 创建一个新的文档对象。
  • 创建新的DocumentBuilder对象并使用Document对象对其进行初始化。
  • 使用DocumentBuilder对象插入/写入元素。
  • 使用Document.Save方法保存文档。

以下代码示例显示如何在 C# 中创建 Word DOCX。

Document doc = new Document();
DocumentBuilder builder = new DocumentBuilder(doc);

// Specify font formatting
Font font = builder.Font;
font.Size = 32;
font.Bold = true;
font.Color = System.Drawing.Color.Black;
font.Name = "Arial";
font.Underline = Underline.Single;

// Insert text
builder.Writeln("This is the first page.");
builder.Writeln();

// Change formatting for next elements.
font.Underline = Underline.None;
font.Size = 10;
font.Color = System.Drawing.Color.Blue;

builder.Writeln("This following is a table");
// Insert a table
Table table = builder.StartTable();
// Insert a cell
builder.InsertCell();
// Use fixed column widths.
table.AutoFit(AutoFitBehavior.AutoFitToContents);
builder.CellFormat.VerticalAlignment = CellVerticalAlignment.Center;
builder.Write("This is row 1 cell 1");
// Insert a cell
builder.InsertCell();
builder.Write("This is row 1 cell 2");
builder.EndRow();
builder.InsertCell();
builder.Write("This is row 2 cell 1");
builder.InsertCell();
builder.Write("This is row 2 cell 2");
builder.EndRow();
builder.EndTable();
builder.Writeln();

// Insert image
builder.InsertImage("image.png");
// Insert page break
builder.InsertBreak(BreakType.PageBreak);
// all the elements after page break will be inserted to next page.

// Save the document
doc.Save("Document.docx");

下面是我们执行上面代码后得到的文档。

在 C# 中编辑 Word DOC

您还可以使用Aspose.Words for .NET编辑或修改现有的 Word 文档。Aspose.Words文档对象模型类允许您访问和修改文档的元素及其格式。DOM 是文档在内存中的表示。要了解作为 DOM 的文档表示,请参阅DOM 概述。

现在让我们看看如何编辑 Word 文档中的现有元素。假设我们需要更新文本“This is the first page”。在我们最近创建的文档中。由于这是文档第一部分的第一段,我们可以通过指定第一部分和第一段的索引来访问它。

下面的代码示例显示了如何使用 C# 编辑 Word 文档中的段落。

// Load document
Document doc = new Document("Document.docx");
DocumentBuilder builder = new DocumentBuilder(doc);
// Access the paragraph
var paragraph=doc.Sections[0].Body.Paragraphs[0].Runs[0];
paragraph.Text = "This is updated text";
// Save the document
doc.Save("Document_updated.docx");

以下是更新后的 Word 文档。

C# Microsoft Word 自动化 - 转换 Word 文档

除了创建和操作 Word 文档,Aspose.Words for .NET 还允许将文档转换为其他格式,包括(但不限于)PDF、XPS、EPUB、HTML 和图像格式,如 BMP、PNG 或 JPEG。以下代码示例显示了如何在 C# 中将 Word 文档转换为 PDF。

Document doc = new Document("word.docx");
// Provide PDFSaveOption compliance to PDF17
PdfSaveOptions options = new PdfSaveOptions();
options.Compliance = PdfCompliance.Pdf17;
// Convert Word to PDF
doc.Save("output.pdf", options);

在 C# 中自动解析 Word 文档

您还可以通过将其内容提取为纯文本来解析 Word 文档。以下代码示例显示如何从 Word 文档中提取文本并将其保存到.txt文件中。

// Load the document from disk.
Document doc = new Document("document.docx");
// Save as plain text
doc.Save("output.txt");

以上便是如何使用C#创建 MS Word 文档,要是您还有其他关于产品方面的问题,欢迎咨询我们

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

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

相关文章

苹果6信号不好的快速解决方法

许多朋友反馈,苹果6的信号不佳,建议从以下方面查找: 方法一:开启飞行模式后再关闭 有时候手机由于周围环境网络比较差,会导致信号处于无服务状态,这时后我们开启飞行模式后再关闭飞行模式,系统就…

反序列化漏洞及PHP魔法函数

目录 1、漏洞原理 2、序列化(以PHP语言为例) 3、反序列化 4、PHP魔法函数 (1)__wakeup() (2)__destruct() (3)__construct() (4)__toString() &…

Arduino UNO驱动micro SD卡读写模块

目录一、简介二、使用前准备三、测试方法四、实验现象一、简介 Micro SD卡模块TF卡读写卡器板载电平转换电路,即接口电平可为5V或3.3V,支持支持Micro SD卡(≤2G)、Micro SDHC高速卡(≤32G)。供电电源为4.5V~5.5V,板载3.3V稳压电路&#xff0…

甘特图控件DHTMLX Gantt入门使用教程【引入】:dhtmlxGantt与ASP.NET Core(上)

DHTMLX Gantt是用于跨浏览器和跨平台应用程序的功能齐全的Gantt图表。可满足项目管理应用程序的大部分开发需求,具备完善的甘特图图表库,功能强大,价格便宜,提供丰富而灵活的JavaScript API接口,与各种服务器端技术&am…

minio 部署、迁移、使用

一、minio 部署 1、单节点部署 部署IP:192.168.206.10 1.1、下载minio的二进制文件 wget https://dl.min.io/server/minio/release/linux-amd64/minio 1.2、规划磁盘 minio 数据目录一定不能和 跟/ 在一个磁盘上,要单独挂载,比如规划将m…

一文看懂SpringBoot操纵数据库

1.前言 很多同学进入公司就开始参与项目开发,大多数情况是对某个项目进行维护或者需求迭代,能够从0到1参与到项目中的机会很少,因此并没有多少机会了解某些技术的运行机制。换句话说,有的面试官在面试的时候就会探讨深层的技术问题…

【产品设计】那些被迫妥协的产品设计背后的技术原因

刚入门的产品经理经常会听到前辈们说应该懂点技术,却不明白为什么。本文作者分享了几个被迫妥协的产品设计的例子,希望能让不是技术出身的产品经理了解到“产品经理应该懂点技术”在产品设计中有什么指导意义,一起来看一下吧。 刚入门的产品经…

学习C++:C++进阶(六)如何在C++代码中调用python类,实例化python中类的对象,如何将conda中的深度学习环境导入C++项目中

目录 1.应用场景 2.场景:利用maskrcnn深度学习网络实现语义分割 3.CMake配置python解释器 4.C中实现实例化python中的类的对象并调用类内方法 4.1 初始化python环境 4.2 实例化python类的对象 1.应用场景 我们在视觉SLAM以及目标检测和识别中,经常…

AMD GPU安装运行stable diffusion

本文操作环境为Windows10/11AMD AI绘画是一种利用人工智能技术进行绘画的方法。它可以通过机器学习算法来学习艺术家的风格,并生成类似于艺术家的作品。最近,AI绘画技术得到了很大的发展,许多公司和研究机构都在进行相关的研究和开发。例如&…

华为电脑录屏功能在哪?这样做,您可以快速找到

案例:如何在华为电脑上找到电脑录屏功能? “听说电脑有录屏功能,但我在我的华为电脑上找了很久,都没有找到。难道华为电脑没有录屏功能吗?有没有小伙伴可以告诉我华为电脑录屏功能在哪?孩子已经快绝望了&a…

第六章 法律体系

目录 第一节 法律体系与法律部门的概念 一、法律体系的概念 (一)法律体系的含义和特征 (二)法律体系与相关概念的区别(法律体系与国家,现行有关) (三)法律体系的形成和…

本地存储、自定义事件、全局事件总线、消息订阅与发布【Vue】

Vue 1.1 浏览器的本地存储 存储内容大小一般支持5MB左右(不同浏览器可能还不一样)浏览器通过 Window.sessionStorage 和 Window.localStorage 属性来实现本地存储机制相关API: (1)xxxxStorage.setItem(key, value); 该方法接受一…

CT前瞻(三):Adobe系列XD软件绘制简单的原型图与交互设计

文章目录📋前言🎯关于原型图绘制🎯XD绘制原型图与交互设计🎯关于XD软件其他功能📝最后📋前言 Adobe XD是一个协作式易用平台,可帮助团队为网站、移动应用程序、语音界面、游戏等创建设计。还可…

每个 Android 开发者都应该知道的有用资源

每个 Android 开发者都应该知道的有用资源 在本文中,我将提到 7 个资源,这些资源对于 Android 开发人员来说非常有益。我亲自使用过其中的每一个几次。他们无数次派上用场。确保您不要忘记为这些资源添加书签/收藏,以便您可以在需要使用它们时…

医院体检PEIS系统源码

一、医院体检系统概述 1. 医院体检系统概述 目前,大多数的体检还停留在手工操作上,如单位体检时手工书写体检人员信息、医生手工书写体检结果、检验报告打印后进行手工粘贴等,这样造成极大的工作量,效率低下,而且极易…

【三十天精通Vue 3】第九天 Vue 3 路由详解

✅创作者:陈书予 🎉个人主页:陈书予的个人主页 🍁陈书予的个人社区,欢迎你的加入: 陈书予的社区 🌟专栏地址: 三十天精通 Vue 3 文章目录引言一、Vue 3 路由概述1.1 路由的简介1.2 路由的分类1.3 路由的语…

暗讽友商 昆仑万维大模型预告刺激股价

搭上AI风口,上市公司昆仑万维年内股价大涨217.56%,一时名声大噪。火了以后,昆仑万维的野心越来越大,喊出“All in AGI(通用人工智能)与AIGC”的豪言壮语。 在近期预告旗下大模型“天工”邀测的公告中&…

STL :双端队列容器 Deque

Deque #include<deque> using namesace std; 双端队列容器 &#xff1a;双向开口的连续线性空间&#xff1b; 擅长尾部和头部添加或删除元素&#xff1a;常数阶&#xff1b; 存储元素并不能保证所有元素都存储到连续的内存空间中&#xff1b; deque 是动态的以分段…

TiDB实战篇-TiDB配置

简介 熟系TiDB的配置相关。 TiDB的大体参数 系统配置对应的是TiDB-Server,PD和TiKV和TiDB-Server基本在集群配置里面配置。 系统配置 系统变量 | PingCAP 文档中心 集群配置 PD 配置文件描述 | PingCAP 文档中心 配置的存储位置 系统配置存储在TiKV中的&#xff0c;集…

如何免费恢复电脑上误删除的视频

虽然我们现在可以在单个硬盘驱动器上存储无数大型视频文件是件好事&#xff0c;但这也意味着单个用户错误或硬件/软件故障可能会立即抹去数小时的记忆&#xff0c;而没有任何明显的方法可以恢复它们。在本文中&#xff0c;我们提供了一个快速的分步视频恢复指南&#xff0c;以帮…