写点什么

C#/VB.NET: 改变 Word 中的字体颜色

作者:Geek_249eec
  • 2022 年 8 月 16 日
    四川
  • 本文字数:2862 字

    阅读完需:约 9 分钟

在我们日常操作 Word 文档时,时常会通过改变字体颜色来突出某些重要文字内容,这样既可以使文档内容更加清晰、醒目,也可以在一定程度上丰富文档外观。在这篇文章中,我将使用 Free Spire.Doc for .NET 演示如何在 C#/VB.NET 程序中改变 Word 文档中的字体颜色。

 

 

安装 Free Spire.Doc for .NET

 

方法一:

    通过NuGet安装 Free Spire.Doc for .NET,具体步骤为:依次选择工具>NuGet 包管理器>程序包管理器控制台,然后执行以下命令:

    PM> Install-Package FreeSpire.Doc     

 

方法二:

    在程序中手动引入 Spire.doc.dll 文件;将Free Spire.Doc for .NET 下载到本地,解压并安装。安装完成后,打开 Visual Studio 创建新项目,在右边的“解决方案资源管理器”中右键点击“引用”,再依次选择“添加引用”> “浏览”,找到安装路径下 BIN 文件夹中的 dll 文件,点击“确定”,将其添加引用至程序中。

 

改变段落字体颜色

下列为改变 Word 文档中段落字体颜色的具体步骤。

 

  •   创建 Document 类的实例。

  •   使用 Document.LoadFromFile()方法,加载 Word 文档。

  •   利用 Document.Sections[sectionIndex] 属性获取所需的节。

  •   利用 Section.Paragraphs[paragraphIndex]属性获取要更改字体颜色的段落。

  •   创建 ParagraphStyle 实例。

  •   利用 ParagraphStyle.Name 属性和 ParagraphStyle.CharacterFormat.TextColor 属性,设置样式名称和字体颜色。

  • 使用 Document.Styles.Add()方法,将样式添加到文档中。

  •   使用 Paragraph.ApplyStyle()方法,将样式应用于段落。

  •   使用 Document.SaveToFile()方法,保存结果文档。


using Spire.Doc;using Spire.Doc.Documents;using System.Drawing;
namespace ChangeFontColorForParagraph{ class Program { static void Main(string[] args) { //创建Document类的实例 Document document = new Document(); //加载Word文档 document.LoadFromFile("Sample.docx");
//获取第一节 Section section = document.Sections[0];
//改变第一段字体颜色 Paragraph p1 = section.Paragraphs[0]; ParagraphStyle s1 = new ParagraphStyle(document); s1.Name = "Color1"; s1.CharacterFormat.TextColor = Color.RosyBrown; document.Styles.Add(s1); p1.ApplyStyle(s1.Name);
//改变第二段字体颜色 Paragraph p2 = section.Paragraphs[1]; ParagraphStyle s2 = new ParagraphStyle(document); s2.Name = "Color2"; s2.CharacterFormat.TextColor = Color.DarkBlue; document.Styles.Add(s2); p2.ApplyStyle(s2.Name);
//保存结果文档 document.SaveToFile("ChangeParagraphTextColor.docx", FileFormat.Docx); } }}
复制代码

VB.NET

Imports Spire.DocImports Spire.Doc.DocumentsImports System.Drawing
Namespace ChangeFontColorForParagraph Friend Class Program Private Shared Sub Main(ByVal args As String()) '创建Document类的实例 Dim document As Document = New Document() '加载Word文档 document.LoadFromFile("Sample.docx")
'获取第一节 Dim section As Section = document.Sections(0)
'改变第一段字体颜色 Dim p1 As Paragraph = section.Paragraphs(0) Dim s1 As ParagraphStyle = New ParagraphStyle(document) s1.Name = "Color1" s1.CharacterFormat.TextColor = Color.RosyBrown document.Styles.Add(s1) p1.ApplyStyle(s1.Name)
'改变第二段字体颜色 Dim p2 As Paragraph = section.Paragraphs(1) Dim s2 As ParagraphStyle = New ParagraphStyle(document) s2.Name = "Color2" s2.CharacterFormat.TextColor = Color.DarkBlue document.Styles.Add(s2) p2.ApplyStyle(s2.Name)
'保存结果文档 document.SaveToFile("ChangeParagraphTextColor.docx", FileFormat.Docx) End Sub End ClassEnd Namespace
复制代码



改变指定文本的字体颜色

下列为改变 Word 文档中指定文本的字体颜色的具体步骤。

 

  •   创建 Document 类的实例。

  •   使用 Document.LoadFromFile()方法,加载 Word 文档。

  •   使用 Document.FindAllString()方法寻找需要改变字体颜色的文本。

  •   遍历所有出现过的指定文本,再利用 TextSelection.GetAsOneRange().CharacterFormat.TextColor 属性,并更改其字体颜色。

  •   使用 Document.SaveToFile()方法,保存结果文档。


using Spire.Doc;using Spire.Doc.Documents;using System.Drawing;
namespace ChangeFontColorForText{ class Program { static void Main(string[] args) { //创建Document类的实例 Document document = new Document(); //加载Word文档 document.LoadFromFile("Sample.docx");
//寻找需要改变字体颜色的文本 TextSelection[] text = document.FindAllString("中秋节", false, true); //改变指定文本的字体颜色 foreach (TextSelection seletion in text) { seletion.GetAsOneRange().CharacterFormat.TextColor = Color.Red; }
//保存结果文档 document.SaveToFile("ChangeCertainTextColor.docx", FileFormat.Docx); } }}
复制代码

VB.NET


Imports Spire.DocImports Spire.Doc.DocumentsImports System.Drawing
Namespace ChangeFontColorForText Friend Class Program Private Shared Sub Main(ByVal args As String()) '创建Document类的实例 Dim document As Document = New Document() '加载Word文档 document.LoadFromFile("Sample.docx")
'寻找需要改变字体颜色的文本 Dim text As TextSelection() = document.FindAllString("中秋节", False, True) '改变指定文本的字体颜色 For Each seletion As TextSelection In text seletion.GetAsOneRange().CharacterFormat.TextColor = Color.Red Next
'保存结果文档 document.SaveToFile("ChangeCertainTextColor.docx", FileFormat.Docx) End Sub End ClassEnd Namespace
复制代码



用户头像

Geek_249eec

关注

还未添加个人签名 2022.07.13 加入

还未添加个人简介

评论

发布
暂无评论
C#/VB.NET: 改变Word中的字体颜色_C#_Geek_249eec_InfoQ写作社区