العمل مع الصور في العروض التقديمية — 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.


إضافة صورة من ملف

حمّل بايتات الصورة من القرص وأضفها إلى مجموعة صور العرض التقديمي باستخدام 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);

انظر أيضًا

 العربية