將 RichText 新增到單元格

通過新增到單元格的 RichText 集合屬性,應單獨新增要使用不同格式的文字的每個元素。

var cell = ws.Cells[1,1];
cell.IsRichText = true;     // Cell contains RichText rather than basic values
cell.Style.WrapText = true; // Required to honor new lines

var title = cell.RichText.Add("This is my title");
var text = cell.RichText.Add("\nAnd this is my text");

請注意,每次新增()一個新字串時,它將繼承上一節中的格式。因此,如果要更改預設格式,則只需在新增的第一個字串上更改它。

但是,在格式化文字時,此行為可能會造成一些混淆。使用上面的示例,以下程式碼將使單元格 Bold 和 Italic 中的所有文字 - 這不是所需的行為:

// Common Mistake
var title = cell.RichText.Add("This is my title");
title.Bold = true;
title.Italic = true;

var text = cell.RichText.Add("\nAnd this is my text"); // Will be Bold and Italic too

首選方法是先新增所有文字部分,然後再應用特定於部分的格式,如下所示:

var title = cell.RichText.Add("This is my title");
title.FontName = "Verdana";    // This will be applied to all subsequent sections as well

var text = cell.RichText.Add("\nAnd this is my text");

// Format JUST the title
title.Bold = true;
title.Italic = true;