在我们日常操作 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.Doc
Imports Spire.Doc.Documents
Imports 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 Class
End 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.Doc
Imports Spire.Doc.Documents
Imports 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 Class
End Namespace
复制代码
评论