Access and Update the Portions of Rich Text of Cell

Access and Update the Portions of Rich Text of Cell

The following code demonstrates the usage of Cell.GetCharacters() and Cell.SetCharacters() method using the source excel file which you can download from the provided link. The source excel file has a rich text in the cell A1. It has 3 portions and each portion has a different font. The following code snippet accesses these portions and updates the first portion with a new font name. Finally, it saves the workbook as output excel file. When you will open it, you will find the font of the first portion of the text has changed to “Arial”.

C# code to access and update the portions of Rich Text of Cell

// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-.NET
// The path to the documents directory.
string dataDir = RunExamples.GetDataDir(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType);
string inputPath = dataDir + "Sample.xlsx";
string outputPath = dataDir + "Output.out.xlsx";
Workbook workbook = new Workbook(inputPath);
Worksheet worksheet = workbook.Worksheets[0];
Cell cell = worksheet.Cells["A1"];
Console.WriteLine("Before updating the font settings....");
FontSetting[] fnts = cell.GetCharacters();
for (int i = 0; i < fnts.Length; i++)
{
Console.WriteLine(fnts[i].Font.Name);
}
// Modify the first FontSetting Font Name
fnts[0].Font.Name = "Arial";
// And update it using SetCharacters() method
cell.SetCharacters(fnts);
Console.WriteLine();
Console.WriteLine("After updating the font settings....");
fnts = cell.GetCharacters();
for (int i = 0; i < fnts.Length; i++)
{
Console.WriteLine(fnts[i].Font.Name);
}
// Save workbook
workbook.Save(outputPath);

Console output generated by the sample code

Here is the console output of the above sample code using the source excel file.

Before updating the font settings....

Century

Courier New

Verdana

After updating the font settings....

Arial

Courier New

Verdana