Paramètres de remplissage
Couleurs et motifs d’arrière-plan
Microsoft Excel peut définir les couleurs avant-plan (contour) et arrière-plan (remplissage) des cellules et les motifs d’arrière-plan.
Aspose.Cells prend également en charge ces fonctionnalités de manière flexible. Dans ce sujet, nous apprenons à utiliser ces fonctionnalités en utilisant Aspose.Cells.
Définition de couleurs et motifs d’arrière-plan
Aspose.Cells fournit une classe, Workbook, qui représente un fichier Microsoft Excel. La classe Workbook contient une collection Worksheets qui permet d’accéder à chaque feuille de calcul du fichier Excel. Une feuille de calcul est représentée par la classe Worksheet. La classe Worksheet fournit une collection Cells. Chaque élément de la collection Cells représente un objet de la classe Cell.
La classe Cell possède les méthodes GetStyle et SetStyle qui sont utilisées pour obtenir et définir la mise en forme d’une cellule. La classe Style fournit des propriétés pour définir les couleurs avant-plan et arrière-plan des cellules. Aspose.Cells fournit une énumération BackgroundType qui contient un ensemble de types prédéfinis de motifs d’arrière-plan qui sont donnés ci-dessous.
Motifs d’arrière-plan | Description |
---|---|
DiagonalCrosshatch | Représente le motif de quadrillage en diagonale |
DiagonalStripe | Représente un motif de rayures diagonales |
Gray6 | Représente un motif de gris à 6,25% |
Gray12 | Représente un motif de gris à 12,5% |
Gray25 | Représente un motif de gris à 25% |
Gray50 | Représente un motif de gris à 50% |
Gray75 | Représente un motif de gris à 75% |
HorizontalStripe | Représente un motif de rayures horizontales |
None | Représente pas d’arrière-plan |
ReverseDiagonalStripe | Représente un motif de rayures inversées diagonales |
Solid | Représente un motif solide |
ThickDiagonalCrosshatch | Représente un motif de quadrillage diagonal épais |
ThinDiagonalCrosshatch | Représente un motif de quadrillage diagonal fin |
ThinDiagonalStripe | Représente un motif de rayures diagonales fines |
ThinHorizontalCrosshatch | Représente un motif de quadrillage horizontal fin |
ThinHorizontalStripe | Représente un motif de rayures horizontales fines |
ThinReverseDiagonalStripe | Représente un motif de rayures inversées diagonales fines |
ThinVerticalStripe | Représente un motif de rayures verticales fines |
VerticalStripe | Représente un motif de rayures verticales |
Dans l’exemple ci-dessous, la couleur de premier plan de la cellule A1 est définie, mais A2 est configurée pour avoir à la fois des couleurs de premier plan et d’arrière-plan avec un motif d’arrière-plan de rayures verticales.|
// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-.NET | |
// The path to the documents directory. | |
string dataDir = RunExamples.GetDataDir(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType); | |
// Create directory if it is not already present. | |
bool IsExists = System.IO.Directory.Exists(dataDir); | |
if (!IsExists) | |
System.IO.Directory.CreateDirectory(dataDir); | |
// Instantiating a Workbook object | |
Workbook workbook = new Workbook(); | |
// Adding a new worksheet to the Workbook object | |
int i = workbook.Worksheets.Add(); | |
// Obtaining the reference of the newly added worksheet by passing its sheet index | |
Worksheet worksheet = workbook.Worksheets[i]; | |
// Define a Style and get the A1 cell style | |
Style style = worksheet.Cells["A1"].GetStyle(); | |
// Setting the foreground color to yellow | |
style.ForegroundColor = Color.Yellow; | |
// Setting the background pattern to vertical stripe | |
style.Pattern = BackgroundType.VerticalStripe; | |
// Apply the style to A1 cell | |
worksheet.Cells["A1"].SetStyle(style); | |
// Get the A2 cell style | |
style = worksheet.Cells["A2"].GetStyle(); | |
// Setting the foreground color to blue | |
style.ForegroundColor = Color.Blue; | |
// Setting the background color to yellow | |
style.BackgroundColor = Color.Yellow; | |
// Setting the background pattern to vertical stripe | |
style.Pattern = BackgroundType.VerticalStripe; | |
// Apply the style to A2 cell | |
worksheet.Cells["A2"].SetStyle(style); | |
// Saving the Excel file | |
workbook.Save(dataDir + "book1.out.xls", SaveFormat.Excel97To2003); |
Important à savoir
- Pour définir la couleur d’avant-plan ou d’arrière-plan d’une cellule, utilisez les propriétés ForegroundColor ou BackgroundColor de l’objet Style. Ces deux propriétés prendront effet seulement si la propriété Style de l’objet Pattern est configurée.
- La propriété ForegroundColor définit la couleur d’ombrage de la cellule. La propriété Pattern spécifie le type de motif de fond utilisé pour la couleur d’avant-plan ou d’arrière-plan. Aspose.Cells fournit une énumération, BackgroundType, qui contient un ensemble de types prédéfinis de motifs de fond.
- Si vous sélectionnez la valeur BackgroundType.None de l’énumération BackgroundType, la couleur d’avant-plan n’est pas appliquée. De même, la couleur d’arrière-plan n’est pas appliquée si vous sélectionnez les valeurs BackgroundType.None ou BackgroundType.Solid.
- Lors de la récupération de la couleur d’ombrage/remplissage d’une cellule, si Style.Pattern est BackgroundType.None, Style.ForegroundColor renverra Color.Empty.
Application d’effets de remplissage dégradé
Pour appliquer vos effets de remplissage dégradé souhaités à la cellule, utilisez la méthode SetTwoColorGradient de l’objet Style en conséquence.
// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-.NET | |
// The path to the documents directory. | |
string dataDir = RunExamples.GetDataDir(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType); | |
// Instantiate a new Workbook | |
Workbook workbook = new Workbook(); | |
// Get the first worksheet (default) in the workbook | |
Worksheet worksheet = workbook.Worksheets[0]; | |
// Input a value into B3 cell | |
worksheet.Cells[2, 1].PutValue("test"); | |
// Get the Style of the cell | |
Style style = worksheet.Cells["B3"].GetStyle(); | |
// Set Gradient pattern on | |
style.IsGradient = true; | |
// Specify two color gradient fill effects | |
style.SetTwoColorGradient(Color.FromArgb(255, 255, 255), Color.FromArgb(79, 129, 189), GradientStyleType.Horizontal, 1); | |
// Set the color of the text in the cell | |
style.Font.Color = Color.Red; | |
// Specify horizontal and vertical alignment settings | |
style.HorizontalAlignment = TextAlignmentType.Center; | |
style.VerticalAlignment = TextAlignmentType.Center; | |
// Apply the style to the cell | |
worksheet.Cells["B3"].SetStyle(style); | |
// Set the third row height in pixels | |
worksheet.Cells.SetRowHeightPixel(2, 53); | |
// Merge the range of cells (B3:C3) | |
worksheet.Cells.Merge(2, 1, 1, 2); | |
// Save the Excel file | |
workbook.Save(dataDir + "output.xlsx"); |
Couleurs et palette
Une palette est le nombre de couleurs disponibles pour créer une image. L’utilisation d’une palette normalisée dans une présentation permet à l’utilisateur de créer un aspect cohérent. Chaque fichier Microsoft Excel (97-2003) possède une palette de 56 couleurs qui peuvent être appliquées aux cellules, polices, quadrillages, objets graphiques, remplissages et lignes dans un graphique.
Avec Aspose.Cells, il est possible non seulement d’utiliser les couleurs existantes de la palette mais aussi des couleurs personnalisées. Avant d’utiliser une couleur personnalisée, ajoutez-la d’abord à la palette.
Ce sujet traite de l’ajout de couleurs personnalisées à la palette.
Ajout de couleurs personnalisées à la palette
Aspose.Cells prend en charge la palette de 56 couleurs de Microsoft Excel. Pour utiliser une couleur personnalisée qui n’est pas définie dans la palette, ajoutez la couleur à la palette.
Aspose.Cells fournit une classe Workbook qui représente un fichier Microsoft Excel. La classe Workbook fournit une méthode ChangePalette qui prend les paramètres suivants pour ajouter une couleur personnalisée pour modifier la palette :
- Couleur personnalisée, la couleur personnalisée à ajouter.
- Index, l’index de la couleur dans la palette que la couleur personnalisée remplacera. Doit être compris entre 0 et 55.
L’exemple ci-dessous ajoute une couleur personnalisée (Orchid) à la palette avant de l’appliquer sur une police.
// Instantiating an Workbook object | |
Workbook workbook = new Workbook(); | |
//Checks if a color is in the palette for the spreadsheet. | |
Console.WriteLine(workbook.IsColorInPalette(Color.Orchid)); | |
// Adding Orchid color to the palette at 55th index | |
workbook.ChangePalette(Color.Orchid, 55); | |
Console.WriteLine(workbook.IsColorInPalette(Color.Orchid)); | |
// Adding a new worksheet to the Excel object | |
int i = workbook.Worksheets.Add(); | |
// Obtaining the reference of the newly added worksheet by passing its sheet index | |
Worksheet worksheet = workbook.Worksheets[i]; | |
// Accessing the "A1" cell from the worksheet | |
Cell cell = worksheet.Cells["A1"]; | |
// Adding some value to the "A1" cell | |
cell.PutValue("Hello Aspose!"); | |
// Defining new Style object | |
Style styleObject = workbook.CreateStyle(); | |
// Setting the Orchid (custom) color to the font | |
styleObject.Font.Color = workbook.Colors[55]; | |
// Applying the style to the cell | |
cell.SetStyle(styleObject); | |
// Saving the Excel file | |
workbook.Save("out.xlsx"); |