کار با تصاویر در ارائهها — Aspose.Slides FOSS برای .NET
Aspose.Slides FOSS for .NET به شما امکان میدهد تصاویر را در مجموعه تصویرهای مشترک یک ارائه جاسازی کنید و آنها را بر روی اسلایدها با استفاده از اشکال 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);