Darbs ar attēliem prezentācijās — Aspose.Slides FOSS for .NET

Aspose.Slides FOSS for .NET ļauj jums iegult attēlus prezentācijas kopējā attēlu kolekcijā un parādīt tos slaidos, izmantojot PictureFrame formas. Attēlus var arī izmantot kā formas fona aizpildījumus, izmantojot FillType.Picture.


Attēla pievienošana no faila

Ielādējiet attēla baitus no diska un pievienojiet tos prezentācijas attēlu kolekcijai ar prs.Images.AddImage(). Pēc tam novietojiet attēlu slaidā kā 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);

Četri pozicionālie argumenti AddPictureFrame() ir: x, y, width, height punktos.


Pievienojot attēlu no plūsmas

Ja jums ir attēla dati no plūsmas (piemēram, lejupielādēti no URL vai nolasīti no datu bāzes), nododiet tos tieši 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);

Pozicionēšana un izmēru noteikšana PictureFrame

PictureFrame, ko atgriež AddPictureFrame(), pārmanto visas Shape ģeometrijas īpašības un to var pārvietot pēc izveides:

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);

Izmantojot attēlu kā formas aizpildījumu

Jebkura forma (ne tikai PictureFrame) var izmantot attēlu kā fona aizpildījumu. Iestatiet FillType = FillType.Picture un piešķiriet attēlu 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 mērogo attēlu, lai aizpildītu visu formu.


Vairāku attēlu pievienošana slaidiem

Attēli, kas pievienoti prs.Images, tiek koplietoti visos slaidos. To pašu attēla objektu var izmantot vairākos slaidos, nepārkopējot datus:

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);

Skatīt arī

 Latviešu