Εργασία με εικόνες σε παρουσιάσεις — Aspose.Slides FOSS για .NET

Aspose.Slides FOSS for .NET lets you embed images in a presentation’s shared image collection and display them on slides using PictureFrame σχήματα. Οι εικόνες μπορούν επίσης να χρησιμοποιηθούν ως γεμίσματα φόντου σχήματος μέσω FillType.Picture.


Προσθήκη εικόνας από αρχείο

Φορτώστε τα bytes της εικόνας από το δίσκο και προσθέστε τα στη συλλογή εικόνων της παρουσίασης με prs.Images.AddImage(). Στη συνέχεια τοποθετήστε την εικόνα σε μια διαφάνεια ως 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);

Τα τέσσερα ορίσματα θέσης για AddPictureFrame() είναι: x, y, width, height σε points.


Προσθήκη εικόνας από ροή (Stream)

Εάν έχετε δεδομένα εικόνας από ροή (π.χ., ληφθέντα από URL ή αναγνωσμένα από βάση δεδομένων), περάστε τα απευθείας στο 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

Το PictureFrame που επιστρέφεται από AddPictureFrame() κληρονομεί όλα τα Shape ιδιότητες γεωμετρίας και μπορεί να επανατοποθετηθεί μετά τη δημιουργία:

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

Χρήση εικόνας ως γέμισμα σχήματος

Οποιοδήποτε σχήμα (όχι μόνο το PictureFrame) μπορεί να χρησιμοποιήσει μια εικόνα ως γέμισμα φόντου. Ορίστε FillType = FillType.Picture και εκχωρήστε την εικόνα στο 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 κλιμακώνει την εικόνα ώστε να γεμίσει ολόκληρο το σχήμα.


Προσθήκη πολλαπλών εικόνων σε διάφορες διαφάνειες

Οι εικόνες που προστέθηκαν στο prs.Images μοιράζονται σε όλες τις διαφάνειες. Το ίδιο αντικείμενο εικόνας μπορεί να χρησιμοποιηθεί σε πολλαπλές διαφάνειες χωρίς να διπλασιάζεται το δεδομένο:

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

Δείτε επίσης

 Ελληνικά