Gestion des images
Aspose.Cells permet aux développeurs d’ajouter des images aux feuilles de calcul lors de l’exécution. De plus, le positionnement de ces images peut être contrôlé au moment de l’exécution, ce qui est discuté plus en détail dans les sections à venir.
Cet article explique comment ajouter des images et comment insérer une image qui montre le contenu de certaines cellules.
Ajout d’images
Ajouter des images à une feuille de calcul est très simple. Cela ne prend que quelques lignes de code : Appelez simplement leAjouter méthode de laDes photos collection (encapsulée dans leFeuille de travail objet). LeAjouterméthode prend les paramètres suivants :
- Index de la ligne supérieure gauche, l’index de la ligne supérieure gauche.
- Index de la colonne en haut à gauche, l’indice de la colonne supérieure gauche.
- Nom du fichier image, le nom du fichier image, complet avec le chemin.
// 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 sheetIndex = workbook.Worksheets.Add(); | |
// Obtaining the reference of the newly added worksheet by passing its sheet index | |
Worksheet worksheet = workbook.Worksheets[sheetIndex]; | |
// Adding a picture at the location of a cell whose row and column indices | |
// Are 5 in the worksheet. It is "F6" cell | |
worksheet.Pictures.Add(5, 5, dataDir + "logo.jpg"); | |
// Saving the Excel file | |
workbook.Save(dataDir + "output.xls"); |
Images de positionnement
Il existe deux manières possibles de contrôler le positionnement des images à l’aide du Aspose.Cells :
- Positionnement proportionnel : définissez une position proportionnelle à la hauteur et à la largeur de la ligne.
- Positionnement absolu : définissez la position exacte sur la page où l’image sera insérée, par exemple, 40 pixels à gauche et 20 pixels en dessous du bord de la cellule.
Positionnement proportionnel
Les développeurs peuvent positionner les images proportionnellement à la hauteur des lignes et à la largeur des colonnes à l’aide de l’outilSupérieurDeltaX etUpperDeltaY propriétés de laAspose.Cells.Drawing.Picture objet. UNEPhoto l’objet peut être obtenu auprès duDes photoscollection en transmettant son index d’images. Cet exemple place une image dans la cellule F6.
// 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 sheetIndex = workbook.Worksheets.Add(); | |
// Obtaining the reference of the newly added worksheet by passing its sheet index | |
Worksheet worksheet = workbook.Worksheets[sheetIndex]; | |
// Adding a picture at the location of a cell whose row and column indices | |
// Are 5 in the worksheet. It is "F6" cell | |
int pictureIndex = worksheet.Pictures.Add(5, 5, dataDir + "logo.jpg"); | |
// Accessing the newly added picture | |
Aspose.Cells.Drawing.Picture picture = worksheet.Pictures[pictureIndex]; | |
// Positioning the picture proportional to row height and colum width | |
picture.UpperDeltaX = 200; | |
picture.UpperDeltaY = 200; | |
// Saving the Excel file | |
workbook.Save(dataDir + "book1.out.xls"); |
Positionnement absolu
Les développeurs peuvent également positionner les images de manière absolue en utilisant leGauche etHaut propriétés de laPhotoobjet. Cet exemple place une image dans la cellule F6, à 60 pixels de la gauche et 10 pixels du haut de la cellule.
// 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); | |
// Instantiating a Workbook object | |
Workbook workbook = new Workbook(); | |
// Adding a new worksheet to the Workbook object | |
int sheetIndex = workbook.Worksheets.Add(); | |
// Obtaining the reference of the newly added worksheet by passing its sheet index | |
Worksheet worksheet = workbook.Worksheets[sheetIndex]; | |
// Adding a picture at the location of a cell whose row and column indices | |
// Are 5 in the worksheet. It is "F6" cell | |
int pictureIndex = worksheet.Pictures.Add(5, 5, dataDir + "logo.jpg"); | |
// Accessing the newly added picture | |
Aspose.Cells.Drawing.Picture picture = worksheet.Pictures[pictureIndex]; | |
// Absolute positioning of the picture in unit of pixels | |
picture.Left = 60; | |
picture.Top = 10; | |
// Saving the Excel file | |
workbook.Save(dataDir + "book1.out.xls"); |
Insertion d’une image basée sur la référence Cell
Aspose.Cells vous permet d’afficher le contenu d’une cellule de feuille de calcul dans une forme d’image. Vous pouvez lier l’image à la cellule qui contient les données que vous souhaitez afficher. Étant donné que la cellule ou la plage de cellules est liée à l’objet graphique, les modifications que vous apportez aux données de cette cellule ou plage de cellules apparaissent automatiquement dans l’objet graphique.
Ajoutez une image à la feuille de calcul en appelant leAjouter une image méthode de laShapeCollection collection (encapsulée dans leFeuille de travail objet). Spécifiez la plage de cellules à l’aide de laFormule attribut de laPhotoobjet.
// 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's cells collection | |
Cells cells = workbook.Worksheets[0].Cells; | |
// Add string values to the cells | |
cells["A1"].PutValue("A1"); | |
cells["C10"].PutValue("C10"); | |
// Add a blank picture to the D1 cell | |
Picture pic = workbook.Worksheets[0].Shapes.AddPicture(0, 3, 10, 6, null); | |
// Specify the formula that refers to the source range of cells | |
pic.Formula = "A1:C10"; | |
// Update the shapes selected value in the worksheet | |
workbook.Worksheets[0].Shapes.UpdateSelectedValue(); | |
// Save the Excel file. | |
workbook.Save(dataDir + "output.out.xls"); |