Afbeelding toevoegen in tabelcel
Contents
[
Hide
]
VSTO
Hieronder staat de code om een afbeelding toe te voegen aan een tabelcel:
//Open presentatieklasse die de tabel bevat
string FileName = "Adding Image in Table Cell.pptx";
string ImageFile = "AsposeLogo.jpg";
Presentation pres = Application.Presentations.Open(FileName);
//Verkrijg de eerste dia
Slide sld = pres.Slides[1];
foreach (Shape shp in sld.Shapes)
{
if (shp.HasTable == Microsoft.Office.Core.MsoTriState.msoTrue)
{
Cell cell= shp.Table.Rows[1].Cells[1];
cell.Shape.Fill.UserPicture(ImageFile);
}
}
Aspose.Slides
Aspose.Slides for .NET biedt de eenvoudigste API om op de gemakkelijkste manier tabellen te maken. Om een afbeelding toe te voegen in een tabelcel tijdens het maken van een nieuwe tabel, volgt u de onderstaande stappen:
- Maak een instantie van de Presentation-klasse
- Verkrijg de referentie van een dia via de index
- Definieer een array van kolommen met breedte
- Definieer een array van rijen met hoogte
- Voeg een tabel toe aan de dia met de AddTable-methode van het IShapes-object
- Maak een Bitmap-object aan om het afbeeldingsbestand op te slaan
- Voeg de Bitmap-afbeelding toe aan het IPPImage-object
- Stel het opvulformaat van de tabelcel in als afbeelding
- Voeg de afbeelding toe aan de eerste cel van de tabel
- Sla de aangepaste presentatie op als een PPTX-bestand
string FileName = "Adding Image in Table Cell.pptx";
string ImageFile = "AsposeLogo.jpg";
Presentation MyPresentation = new Presentation(FileName);
//Verkrijg de eerste dia
ISlide sld = MyPresentation.Slides[0];
//Maak een Bitmap-afbeeldingsobject aan om het afbeeldingsbestand op te slaan
using IImage image = Images.FromFile(ImageFile);
//Maak een IPPImage-object aan met behulp van het bitmap-object
IPPImage imgx1 = MyPresentation.Images.AddImage(image);
foreach (IShape shp in sld.Shapes)
if (shp is ITable)
{
ITable tbl = (ITable)shp;
//Voeg afbeelding toe aan de eerste tabelcel
tbl[0, 0].FillFormat.FillType = FillType.Picture;
tbl[0, 0].FillFormat.PictureFillFormat.PictureFillMode = PictureFillMode.Stretch;
tbl[0, 0].FillFormat.PictureFillFormat.Picture.Image = imgx1;
}
//Sla PPTX op schijf
MyPresentation.Save(FileName, Export.SaveFormat.Pptx);