Arbeiten mit Bildern in Präsentationen Aspose.Slides FOSS für .NET

Aspose.Slides FOSS for .NET lets you embed images in a presentation’s shared image collection and display them on slides using PictureFrame Bilder können auch als Form Hintergrund füllt über die FillType.Picture.


Ein Bild aus einer Datei hinzufügen

Laden Sie Bildbyte von der Festplatte und fügen sie zur Präsentationsbild-Sammlung mit prs.Images.AddImage().Dann platzieren Sie das Bild auf einer Folie als eine 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);

Die vier Positionsargumente für die AddPictureFrame() sind: x, y, width, height in Punkten.


Ein Bild aus einem Stream hinzufügen

Wenn Sie Bilddaten aus einem Stream haben (z. B. von einer URL heruntergeladen oder aus einer Datenbank gelesen), geben Sie sie direkt an die 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);

Positionierung und Größe eines Bildrahmens

Die PictureFrame zurückgegeben von: AddPictureFrame() Erbt alle Shape Geometrie-Eigenschaften und kann nach der Erstellung neu positioniert werden:

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

Ein Bild als Formfüllung zu verwenden

Jede Form (nicht nur PictureFrame) kann ein Bild als Hintergrundfüllung verwenden. Setzen Sie die Schnittstelle für das Bild, um den Hundertspiel zu erstellen. FillType = FillType.Picture und das Bild zuzuordnen, um die 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 Das Bild wird so skaliert, dass es die ganze Form füllt.


Mehrfache Bilder auf Dias hinzufügen

Bilder hinzugefügt zu prs.Images Das gleiche Bildobjekt kann auf mehreren Dias verwendet werden, ohne dass die Daten dupliziert werden:

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

Siehe auch:

 Deutsch