Darbas su paveikslėliais pristatymuose — Aspose.Slides FOSS for .NET
Aspose.Slides FOSS for .NET lets you embed images in a presentation’s shared image collection and display them on slides using PictureFrame figūros. Vaizdus taip pat galima naudoti kaip figūros fono užpildus per FillType.Picture.
Vaizdo pridėjimas iš failo
Įkelkite vaizdo baitus iš disko ir pridėkite juos prie pristatymo vaizdų kolekcijos naudodami prs.Images.AddImage(). Tada įdėkite vaizdą į skaidrę kaip 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);Keturi poziciniai argumentai, skirti AddPictureFrame() yra: x, y, width, height taškais.
Paveikslėlio pridėjimas iš srauto
Jei turite vaizdo duomenis iš srauto (pvz., atsisiųstus iš URL arba perskaitytus iš duomenų bazės), perduokite juos tiesiogiai į 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);PictureFrame pozicionavimas ir dydžio nustatymas
Ši PictureFrame grąžinama AddPictureFrame() paveldi visus Shape geometrines savybes ir gali būti perkelta po sukūrimo:
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);Vaizdo naudojimas kaip formos užpildas
Bet kuri figūra (ne tik PictureFrame) gali naudoti vaizdą kaip fono užpildą. Nustatykite FillType = FillType.Picture ir priskirkite vaizdą 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 masteliai keičia vaizdą, kad jis užpildytų visą figūrą.
Daugelio paveikslėlių pridėjimas per skaidres
Vaizdai, pridėti prie prs.Images dalijami tarp visų skaidrių. Tas pats vaizdo objektas gali būti naudojamas keliose skaidrėse be duomenų dubliavimo:
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);