文档主题
文档模型带有许多预定义的主题,称为文档主题。它们使您能够在文档中指定颜色、字体和各种图形效果,并影响整个工作簿的外观和感觉。每个主题包含一个配色方案和一个字体方案,并由DocumentTheme类。
配色方案
配色方案具有惟一的名称,并包含许多预定义的颜色。它在文档模型中的表示形式是ThemeColorScheme类。一个方案定义了12种颜色,每一种都有一个鞋底ThemeColorType.下面的列表包含了所有内容ThemeColorType价值观:
background1
text1
background2
text2
accent1
accent2
accent3
accent4
accent5
accent6
超链接
跟踪超链接
上面的12种颜色类型是用来创建的ThemableColor对象。它们决定作为实际颜色出现的方案的颜色ThemableColor实例。当你改变主题或配色方案时,实际的颜色ThemeableColor对象也会发生变化。例如,如果您将单元格的填充设置为ThemableColor,应用一个新的主题或另一个方案也会影响固体填充。
示例1演示如何创建ThemeColorScheme对象。注意,该示例向构造函数传递了一个名称和12种颜色。每种颜色旁边都有注释,所以你可以看到对应的颜色ThemeColorType.
例1:创建ThemeColorScheme
ThemeColorScheme colorScheme = new ThemeColorScheme(“我的”,颜色。黑色,//背景1颜色。蓝色,//文本1颜色。棕色,//背景2颜色。青色,//文本2颜色。深灰色,// accent 1 Colors。灰色,//口音2颜色。绿色,//强调3种颜色。LightGray, // accent 4 Colors。品红,//强调5种颜色。橙色,//强调6颜色。紫色,//超链接Colors.Red);/ / followedHyperlink
有几种方法可以创建ThemableColor对象:
向构造函数传递两个参数-ThemeColorType而且双.
ThemeColorType枚举,它有12个可能的值(前面提到的颜色类型)。
第二个参数是类型双应该在-1和1之间。它表示要应用于所选颜色的色调和深浅。
通过ThemeColorType而且ColorShadeType.
ThemeColorType与前面提到的构造函数中相同。
为了创建依赖于当前文档主题的颜色,您需要使用ThemableColor对象。
示例2展示了如何创建ThemableColor。
例2:创建ThemableColor
ThemableColor = new ThemableColor(ThemeColorType.Accent1);
字体方案
字体方案由ThemeFontScheme类。每个字体方案都由一个名称和一些预定义的字体族组成。每个字体族对应两种字体类型中的一种:
主要
小
要创建ThemeFontScheme,您需要将一个名称和两个字体族名称传递给字体方案构造函数。前一个字体族名称对应于MajorThemeFontType后者则是给小调的。
示例3说明如何创建ThemeFontScheme对象。
例3:创建ThemeFontScheme
ThemeFontScheme fontScheme = new ThemeFontScheme("Mine", "Times new Roman", // latinMajor "Arial");/ / latinMinor
为了使用文档主题的字体,您需要使用ThemableFontFamily对象。同样,有几种方法可以创建一个:
传递一个ThemeFontType对象作为构造函数参数——这样您就可以将正在创建的对象绑定到当前选定的文档主题。
传递一个FontFamily对象或表示FontFamily名称的字符串——结果将是一个静态的FontFamily,这意味着当文档主题更改时它不会被更改。
当您需要创建依赖于当前文档主题的知识库字体时,您可以使用ThemableFontFamily对象。
示例4演示了如何创建ThemableFontFamily。
例4:创建ThemableFontFamily
ThemableFontFamily(themefontype . major);
文档主题
现在,当您有了一个颜色和字体方案,您可以创建一个新的DocumentTheme.您需要指定一个名称并传递已经创建的颜色和字体方案。
示例5演示如何使用的配色方案创建DocumentTheme示例1字体方案来自示例3.
例5:创建DocumentTheme
DocumentTheme theme = new DocumentTheme("Mine", colorScheme, fontScheme);
在预定义的静态类中PredefinedThemeSchemes,您可以找到许多预定义的颜色和字体方案。该类公开属性ColorSchemes而且FontSchemes保存所有预定义方案。
例子6演示如何使用预定义的颜色和字体方案创建文档主题。
示例6:从预定义的方案创建DocumentTheme
DocumentTheme theme = new DocumentTheme("From预定义方案",PredefinedThemeSchemes。ColorSchemes [0], PredefinedThemeSchemes.FontSchemes [5]);
更改当前文档主题就像设置单个属性一样简单:
例7更改新创建的工作簿的主题。
例7:更改DocumentTheme
工作簿工作簿=新工作簿();workbook.Worksheets.Add ();工作簿。主题=主题;
获得实际价值
以便得到实际值ThemableColor或ThemableFontFamily你需要打电话给GetActualValue ()方法。
例8:获取实际的颜色
Color actualColor = themableccolor . getactualvalue(主题);//实际的颜色与colorScheme的Accent1颜色相同
例9:获取实际的字体
var actualFont = themableFont.GetActualValue(主题);// actualFont与fontScheme的主字体相同