Darbas su paveikslėliais pristatymuose — Aspose.Slides FOSS for .NET

Aspose.Slides FOSS for .NET leidžia įterpti vaizdus į pristatymo bendrą vaizdų kolekciją ir rodyti juos skaidrėse naudojant PictureFrame formas. Vaizdus taip pat galima naudoti kaip formų fono užpildus per FillType.Picture.


Pridėti paveikslėlį iš failo

Įkelkite vaizdo baitus iš disko ir pridėkite juos prie pristatymo vaizdų kolekcijos naudodami prs.Images.AddImage(). Tada padėkite vaizdą skaidrėje 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 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);

Pozicionavimas ir dydžio nustatymas PictureFrame

PictureFrame, grąžintas AddPictureFrame(), paveldi visas Shape geometrijos savybes ir gali būti perkeliamas 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);

Naudojant paveikslą kaip figūros užpildą

Bet kuri forma (ne tik PictureFrame) gali naudoti paveikslėlį kaip fono užpildą. Nustatykite FillType = FillType.Picture ir priskirkite paveikslėlį 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 keičia vaizdo mastelį, kad jis užpildytų visą formą.


Pridėti kelis vaizdus per skaidres

Pridėti vaizdai į prs.Images yra bendrinami visose skaidrėse. 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);

Žr. taip pat

 Lietuvių