Temas y colores de Excel

Obtener y establecer colores de tema

Aspose.Cells Las API proporcionan funciones para personalizar temas y colores. A continuación se muestran algunos métodos y propiedades que implementan los colores del tema.

  • La propiedad Style.ForegroundThemeColor se puede utilizar para establecer el color de primer plano.
  • La propiedad Style.BackgroundThemeColor se puede utilizar para establecer el color de fondo.
  • La propiedad Font.ThemeColor se puede utilizar para establecer el color de la fuente.
  • El método Workbook.getThemeColor se puede usar para obtener un color de tema.
  • El método Workbook.setThemeColor se puede usar para establecer un color de tema.

El siguiente ejemplo muestra cómo obtener y establecer los colores del tema.

El siguiente ejemplo utiliza un archivo de plantilla XLSX, obtiene los colores para diferentes tipos de colores de tema, cambia los colores y guarda el archivo de 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");

Personalización de temas

El siguiente ejemplo muestra cómo aplicar temas personalizados con los colores deseados. El ejemplo utiliza un archivo de plantilla de muestra creado manualmente en Microsoft Excel 2007.

El archivo de plantilla CustomThemeColor.xlsx

todo:imagen_alternativa_texto

El siguiente ejemplo carga un archivo de plantilla XLSX, define colores para diferentes tipos de colores de tema, aplica los colores personalizados y guarda el archivo de Excel.

El archivo generado con colores de tema personalizados.

todo:imagen_alternativa_texto

// 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");

Uso de los colores del tema

El siguiente ejemplo aplica los colores de fuente y de primer plano de una celda en función de los tipos de color del tema predeterminado (del libro de trabajo). También guarda el archivo de Excel en el disco.

El siguiente resultado se genera al ejecutar el código.

Los colores del tema aplicados a la celda D3 de la hoja de cálculo

todo:imagen_alternativa_texto

// 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");

Temas avanzados