Excel 主题和颜色

Excel 主题和颜色

主题通过命名样式、图形效果和工作簿中使用的其他对象提供统一的外观。例如,Accent1 样式在 Office 和 Apex 主题中看起来不同。通常,您应用一个文档主题,然后将其修改为您想要的方式。

Aspose.Cells 提供自定义主题和颜色的功能。

获取和设置主题颜色

下面是一些实现主题颜色的方法和属性。

以下示例显示如何获取和设置主题颜色。

以下示例使用模板 XLSX 文件,获取不同主题颜色类型的颜色,更改颜色并保存 Microsoft Excel 文件。

// 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);
// Instantiate Workbook object.
// Open an exiting excel file.
Workbook workbook = new Workbook(dataDir + "book1.xlsx");
// Get the Background1 theme color.
Color c = workbook.GetThemeColor(ThemeColorType.Background1);
// Print the color.
Console.WriteLine("theme color Background1: " + c);
// Get the Accent2 theme color.
c = workbook.GetThemeColor(ThemeColorType.Accent2);
// Print the color.
Console.WriteLine("theme color Accent2: " + c);
// Change the Background1 theme color.
workbook.SetThemeColor(ThemeColorType.Background1, Color.Red);
// Get the updated Background1 theme color.
c = workbook.GetThemeColor(ThemeColorType.Background1);
// Print the updated color for confirmation.
Console.WriteLine("theme color Background1 changed to: " + c);
// Change the Accent2 theme color.
workbook.SetThemeColor(ThemeColorType.Accent2, Color.Blue);
// Get the updated Accent2 theme color.
c = workbook.GetThemeColor(ThemeColorType.Accent2);
// Print the updated color for confirmation.
Console.WriteLine("theme color Accent2 changed to: " + c);
// Save the updated file.
workbook.Save(dataDir + "output.out.xlsx");

自定义主题

以下示例显示如何应用具有所需颜色的自定义主题。我们使用在 Microsoft Excel 2007 中手动创建的示例模板文件。

以下示例加载模板 XLSX 文件,为不同的主题颜色类型定义颜色,应用自定义颜色并保存 excel 文件。

// 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);
// Define Color array (of 12 colors) for Theme.
Color[] carr = new Color[12];
carr[0] = Color.AntiqueWhite; // Background1
carr[1] = Color.Brown; // Text1
carr[2] = Color.AliceBlue; // Background2
carr[3] = Color.Yellow; // Text2
carr[4] = Color.YellowGreen; // Accent1
carr[5] = Color.Red; // Accent2
carr[6] = Color.Pink; // Accent3
carr[7] = Color.Purple; // Accent4
carr[8] = Color.PaleGreen; // Accent5
carr[9] = Color.Orange; // Accent6
carr[10] = Color.Green; // Hyperlink
carr[11] = Color.Gray; // Followed Hyperlink
// Instantiate a Workbook.
// Open the template file.
Workbook workbook = new Workbook(dataDir + "book1.xlsx");
// Set the custom theme with specified colors.
workbook.CustomTheme("CustomeTheme1", carr);
// Save as the excel file.
workbook.Save(dataDir + "output.out.xlsx");

使用主题颜色

以下示例根据(工作簿的)默认主题颜色类型应用单元格的前景色和字体颜色。它还将 excel 文件保存到磁盘。

// 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);
// Create directory if it is not already present.
bool IsExists = System.IO.Directory.Exists(dataDir);
if (!IsExists)
System.IO.Directory.CreateDirectory(dataDir);
// Instantiate a Workbook.
Workbook workbook = new Workbook();
// Get cells collection in the first (default) worksheet.
Cells cells = workbook.Worksheets[0].Cells;
// Get the D3 cell.
Aspose.Cells.Cell c = cells["D3"];
// Get the style of the cell.
Style s = c.GetStyle();
// Set foreground color for the cell from the default theme Accent2 color.
s.ForegroundThemeColor = new ThemeColor(ThemeColorType.Accent2, 0.5);
// Set the pattern type.
s.Pattern = BackgroundType.Solid;
// Get the font for the style.
Aspose.Cells.Font f = s.Font;
// Set the theme color.
f.ThemeColor = new ThemeColor(ThemeColorType.Accent4, 0.1);
// Apply style.
c.SetStyle(s);
// Put a value.
c.PutValue("Testing1");
// Save the excel file.
workbook.Save(dataDir + "output.out.xlsx");

推进主题