Εργασία με εικόνες σε παρουσιάσεις — Aspose.Slides FOSS για .NET
Aspose.Slides FOSS for .NET σας επιτρέπει να ενσωματώσετε εικόνες στη κοινόχρηστη συλλογή εικόνων μιας παρουσίασης και να τις εμφανίσετε στις διαφάνειες χρησιμοποιώντας σχήματα 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 σε σημεία.
Προσθήκη εικόνας από ροή
Εάν έχετε δεδομένα εικόνας από ροή (π.χ., ληφθέντα από 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);