将 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;