Excelのテーマと色
テーマは、ブックで使用される名前付きスタイル、グラフィカルエフェクト、およびその他のオブジェクトとともに統一された外観を提供します。たとえば、Accent1スタイルは Office と Apexのテーマで異なる外観になります。通常、ドキュメントテーマを適用し、必要に応じて修正します。
Microsoft Excelでテーマを適用する
テーマカラーを取得および設定する
Aspose.Cells APIでは、テーマと色をカスタマイズするための機能が提供されます。以下は、テーマカラーを実装するいくつかのメソッドとプロパティです。
- Style.ForegroundThemeColorプロパティは、前景色を設定するために使用できます。
- Style.BackgroundThemeColorプロパティは、背景色を設定するために使用できます。
- Font.ThemeColorプロパティは、フォントの色を設定するために使用できます。
- Workbook.getThemeColorメソッドを使用してテーマカラーを取得できます。
- Workbook.setThemeColorメソッドを使用してテーマカラーを設定できます。
使用例では、テーマカラーを取得および設定する方法が示されています。
使用例では、テンプレートXLSXファイルを使用して、さまざまなテーマカラータイプの色を取得し、色を変更し、Microsoft Excelファイルを保存します。
// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-Java | |
// The path to the documents directory. | |
String dataDir = Utils.getDataDir(GetSetThemeColors.class); | |
// 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.BACKGROUND_1); | |
// Print the color | |
System.out.println("theme color Background1: " + c); | |
// Get the Accent2 theme color | |
c = workbook.getThemeColor(ThemeColorType.ACCENT_1); | |
// Print the color | |
System.out.println("theme color Accent2: " + c); | |
// Change the Background1 theme color | |
workbook.setThemeColor(ThemeColorType.BACKGROUND_1, Color.getRed()); | |
// Get the updated Background1 theme color | |
c = workbook.getThemeColor(ThemeColorType.BACKGROUND_1); | |
// Print the updated color for confirmation | |
System.out.println("theme color Background1 changed to: " + c); | |
// Change the Accent2 theme color | |
workbook.setThemeColor(ThemeColorType.ACCENT_1, Color.getBlue()); | |
// Get the updated Accent2 theme color | |
c = workbook.getThemeColor(ThemeColorType.ACCENT_1); | |
// Print the updated color for confirmation | |
System.out.println("theme color Accent2 changed to: " + c); | |
// Save the updated file | |
workbook.save(dataDir + "GetAndSetThemeColorBook.xlsx"); |
テーマのカスタマイズ
以下の例は、独自の色を使用してカスタムテーマを適用する方法を示しています。この例では、Microsoft Excel 2007で手動で作成したサンプルテンプレートファイルを使用しています。
テンプレートCustomThemeColor.xlsxファイル
使用例では、テンプレートXLSXファイルを読み込み、さまざまなテーマカラータイプの色を定義し、カスタムカラーを適用してExcelファイルを保存します。
カスタマイズされたテーマカラーを使用した生成されたファイル
// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-Java | |
// The path to the documents directory. | |
String dataDir = Utils.getDataDir(CustomizingThemes.class); | |
// Define Color array (of 12 colors) for the Theme | |
Color[] carr = new Color[12]; | |
carr[0] = Color.getAntiqueWhite(); // Background1 | |
carr[1] = Color.getBrown(); // Text1 | |
carr[2] = Color.getAliceBlue(); // Background2 | |
carr[3] = Color.getYellow(); // Text2 | |
carr[4] = Color.getYellowGreen(); // Accent1 | |
carr[5] = Color.getRed(); // Accent2 | |
carr[6] = Color.getPink(); // Accent3 | |
carr[7] = Color.getPurple(); // Accent4 | |
carr[8] = Color.getPaleGreen(); // Accent5 | |
carr[9] = Color.getOrange(); // Accent6 | |
carr[10] = Color.getGreen(); // Hyperlink | |
carr[11] = Color.getGray(); // Followed Hyperlink | |
// Instantiate a Workbook | |
// Open the spreadsheet 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 + "CustomThemeColor.xlsx"); |
テーマカラーの使用
使用例では、セルの前景色とフォント色を、ブックのデフォルトテーマの色タイプに基づいて適用します。また、Excelファイルをディスクに保存します。
コードを実行すると、次の出力が生成されます。
ワークシートのD3セルに適用されたテーマカラー
// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-Java | |
// The path to the documents directory. | |
String dataDir = Utils.getDataDir(UseThemeColors.class); | |
// Instantiate a Workbook | |
Workbook workbook = new Workbook(); | |
// Get cells collection in the first (default) worksheet | |
Cells cells = workbook.getWorksheets().get(0).getCells(); | |
// Get the D3 cell | |
Cell c = cells.get("D3"); | |
// Get the style of the cell | |
Style s = c.getStyle(); | |
// Set background color for the cell from the default theme Accent2 color | |
s.setBackgroundThemeColor(new ThemeColor(ThemeColorType.ACCENT_2, 0.5)); | |
// Set the pattern type | |
s.setPattern(BackgroundType.SOLID); | |
// Get the font for the style | |
Font f = s.getFont(); | |
// Set the theme color | |
f.setThemeColor(new ThemeColor(ThemeColorType.ACCENT_4, 0.1)); | |
// Apply style | |
c.setStyle(s); | |
// Put a value | |
c.putValue("Testing"); | |
// Save the excel file | |
workbook.save(dataDir + "UseThemeColors.xlsx"); |