Temas y colores de Excel

Obtener y configurar colores de tema

Las API de Aspose.Cells proporcionan funciones para personalizar temas y colores. A continuación se muestran algunos métodos y propiedades que implementan colores de 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 fuente.
  • El método Workbook.getThemeColor se puede utilizar para obtener un color de tema.
  • El método Workbook.setThemeColor se puede utilizar para establecer un color de tema.

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

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

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:image_alt_text

El siguiente ejemplo carga un archivo XLSX de plantilla, 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:image_alt_text

// 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 Colores de Tema

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

La siguiente salida se genera al ejecutar el código.

Los colores de tema se aplican a la celda D3 de la hoja de cálculo

todo:image_alt_text

// 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