Rad sa slikama u prezentacijama — Aspose.Slides FOSS za .NET
Aspose.Slides FOSS for .NET lets you embed images in a presentation’s shared image collection and display them on slides using PictureFrame oblici. Slike se takođe mogu koristiti kao popunjavanje pozadine oblika putem FillType.Picture.
Dodavanje slike iz datoteke
Učitajte bajtove slike sa diska i dodajte ih u kolekciju slika prezentacije pomoću prs.Images.AddImage(). Zatim postavite sliku na slajd kao PictureFrame:
using Aspose.Slides.Foss;
using Aspose.Slides.Foss.Export;
using var prs = new Presentation();
// Add the image to the shared collection
var imageData = File.ReadAllBytes("logo.png");
var img = prs.Images.AddImage(imageData);
// Place it on the slide as a PictureFrame
var slide = prs.Slides[0];
slide.Shapes.AddPictureFrame(ShapeType.Rectangle, 50, 50, 300, 200, img);
prs.Save("with-image.pptx", SaveFormat.Pptx);Četiri pozicijska argumenta za AddPictureFrame() su: x, y, width, height u tačkama.
Dodavanje slike iz toka
Ako imate podatke slike iz toka (npr., preuzete sa URL-a ili pročitane iz baze podataka), prosledite ih direktno u AddImage():
using Aspose.Slides.Foss;
using Aspose.Slides.Foss.Export;
using var prs = new Presentation();
using var stream = File.OpenRead("photo.jpg");
var img = prs.Images.AddImage(stream);
prs.Slides[0].Shapes.AddPictureFrame(ShapeType.Rectangle, 100, 80, 400, 250, img);
prs.Save("from-stream.pptx", SaveFormat.Pptx);Pozicioniranje i dimenzionisanje PictureFrame-a
The PictureFrame vraća se od AddPictureFrame() nasleđuje sve Shape geometrijska svojstva i može se pomeriti nakon kreiranja:
using Aspose.Slides.Foss;
using Aspose.Slides.Foss.Export;
using var prs = new Presentation();
var imageData = File.ReadAllBytes("photo.jpg");
var img = prs.Images.AddImage(imageData);
var pf = prs.Slides[0].Shapes.AddPictureFrame(ShapeType.Rectangle, 0, 0, 100, 100, img);
// Reposition and resize after creation
pf.X = 50;
pf.Y = 100;
pf.Width = 350;
pf.Height = 250;
prs.Save("positioned.pptx", SaveFormat.Pptx);Korišćenje slike kao popunjavanje oblika
Bilo koji oblik (ne samo PictureFrame) može koristiti sliku kao pozadinsko popunjavanje. Postavite FillType = FillType.Picture i dodelite sliku PictureFillFormat.Picture.Image:
using Aspose.Slides.Foss;
using Aspose.Slides.Foss.Export;
using var prs = new Presentation();
var imageData = File.ReadAllBytes("background.png");
var img = prs.Images.AddImage(imageData);
var slide = prs.Slides[0];
var shape = slide.Shapes.AddAutoShape(ShapeType.RoundCornerRectangle, 50, 50, 400, 250);
shape.FillFormat.FillType = FillType.Picture;
shape.FillFormat.PictureFillFormat.PictureFillMode = PictureFillMode.Stretch;
shape.FillFormat.PictureFillFormat.Picture.Image = img;
prs.Save("picture-fill.pptx", SaveFormat.Pptx);PictureFillMode.Stretch skalira sliku da popuni ceo oblik.
Dodavanje više slika kroz slajdove
Slike dodate u prs.Images se dele između svih slajdova. isti objekat slike može se koristiti na više slajdova bez dupliranja podataka:
using Aspose.Slides.Foss;
using Aspose.Slides.Foss.Export;
using var prs = new Presentation();
var logoData = File.ReadAllBytes("logo.png");
var logo = prs.Images.AddImage(logoData);
// Add the same image to the first slide
prs.Slides[0].Shapes.AddPictureFrame(ShapeType.Rectangle, 600, 10, 100, 40, logo);
prs.Save("shared-image.pptx", SaveFormat.Pptx);