Làm việc với Hình ảnh trong Bản trình chiếu — Aspose.Slides FOSS cho .NET

Aspose.Slides FOSS for .NET cho phép bạn nhúng hình ảnh vào bộ sưu tập hình ảnh chung của bản trình chiếu và hiển thị chúng trên các slide bằng cách sử dụng các hình dạng PictureFrame. Hình ảnh cũng có thể được sử dụng làm nền cho hình dạng thông qua FillType.Picture.


Thêm hình ảnh từ tệp

Tải các byte hình ảnh từ đĩa và thêm chúng vào bộ sưu tập hình ảnh của bản trình chiếu bằng prs.Images.AddImage(). Sau đó đặt hình ảnh lên một slide dưới dạng 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);

Bốn đối số vị trí cho AddPictureFrame() là: x, y, width, height tính bằng điểm.


Thêm hình ảnh từ luồng

Nếu bạn có dữ liệu hình ảnh từ một luồng (ví dụ, tải xuống từ URL hoặc đọc từ cơ sở dữ liệu), hãy truyền trực tiếp nó tới 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);

Định vị và Định kích thước PictureFrame

PictureFrame được trả về bởi AddPictureFrame() kế thừa tất cả các thuộc tính hình học Shape và có thể được định vị lại sau khi tạo:

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

Sử dụng hình ảnh làm nền cho hình dạng

Bất kỳ hình dạng nào (không chỉ PictureFrame) đều có thể sử dụng hình ảnh làm nền tô. Đặt FillType = FillType.Picture và gán hình ảnh cho 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 phóng to hình ảnh để lấp đầy toàn bộ hình dạng.


Thêm Nhiều Hình Ảnh Trên Các Slide

Các hình ảnh được thêm vào prs.Images được chia sẻ trên tất cả các slide. Cùng một đối tượng hình ảnh có thể được sử dụng trên nhiều slide mà không sao chép dữ liệu:

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

Xem Thêm

 Tiếng Việt