Temi e colori di Excel
I temi forniscono un aspetto unificato con stili con nome, effetti grafici e altri oggetti utilizzati in una cartella di lavoro. Ad esempio, lo stile Accent1 ha un aspetto diverso nei temi Office e Apex. Spesso applichi un tema del documento e poi lo modifichi in base alle tue esigenze.
Applicazione di temi in Microsoft Excel
Ottenere e impostare i colori del tema
Le API Aspose.Cells forniscono funzionalità per la personalizzazione di temi e colori. Di seguito sono riportati alcuni metodi e proprietà che implementano i colori del tema.
- La proprietà Style.ForegroundThemeColor può essere utilizzata per impostare il colore di primo piano.
- La proprietà Style.BackgroundThemeColor può essere utilizzata per impostare il colore di sfondo.
- La proprietà Font.ThemeColor può essere utilizzata per impostare il colore del carattere.
- Il metodo Workbook.getThemeColor può essere utilizzato per ottenere un colore del tema.
- Il metodo Workbook.setThemeColor può essere utilizzato per impostare un colore del tema.
L’esempio seguente mostra come ottenere e impostare i colori del tema.
L’esempio seguente utilizza un file modello XLSX, ottiene i colori per diversi tipi di colore del tema, modifica i colori e salva il file Excel Microsoft.
// 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"); |
Personalizzazione dei temi
L’esempio seguente mostra come applicare temi personalizzati con i colori desiderati. L’esempio utilizza un file modello di esempio creato manualmente in Microsoft Excel 2007.
Il file CustomThemeColor.xlsx del modello
L’esempio seguente carica un file modello XLSX, definisce i colori per i diversi tipi di colore del tema, applica i colori personalizzati e salva il file excel.
Il file generato con i colori del tema personalizzati
// 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"); |
Utilizzo dei colori del tema
L’esempio seguente applica i colori di primo piano e dei caratteri di una cella in base ai tipi di colore del tema predefinito (della cartella di lavoro). Salva anche il file excel su disco.
Il seguente output viene generato durante l’esecuzione del codice.
I colori del tema applicati alla cella D3 del foglio di lavoro
// 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"); |