Khung video được sử dụng trong bản trình bày PowerPoint để thể hiện điều gì đó hoặc để thu hút khán giả. Thông thường, các video được sử dụng để tiết kiệm thời gian và làm cho các bài thuyết trình hiệu quả hơn. Trong bài viết này, bạn sẽ học cách làm việc với video trong bản trình bày theo chương trình. Đặc biệt, bài viết sẽ đề cập đến cách nhúng hoặc trích xuất video trong bản trình bày PowerPoint bằng C#.
- .NET API để nhúng video vào bản trình bày PowerPoint
- Nhúng Video vào Bản trình bày PowerPoint bằng C#
- Nhúng video từ nguồn web
- Trích xuất video từ bản trình bày PowerPoint
.NET API để nhúng video vào bản trình bày PowerPoint
Để nhúng hoặc trích xuất video trong bản trình bày PowerPoint, chúng tôi sẽ sử dụng Aspose.Slides for .NET. API được thiết kế để tạo và thao tác với các tài liệu PowerPoint và OpenOffice. Bạn có thể cài đặt API qua NuGet hoặc tải xuống DLL của nó.
PM> Install-Package Aspose.Slides.NET
Nhúng Video vào Bản trình bày PowerPoint bằng C#
Sau đây là các bước để nhúng video vào bản trình bày PowerPoint bằng C#.
- Đầu tiên, tải tệp PowerPoint hoặc tạo tệp mới bằng lớp Trình bày.
- Sau đó, lấy tham chiếu của trang trình bày mong muốn trong đối tượng ISlide.
- Thêm video mới vào bộ sưu tập video của bản trình bày bằng phương thức Presentation.Videos.AddVideo() và nhận tham chiếu của nó vào đối tượng IVideo.
- Thêm khung video mới trong trang chiếu bằng phương pháp ISlide.Shapes.AddVideoFrame (single, single, single, single, IVideo).
- Lấy tham chiếu của khung video vào đối tượng IVideoFrame.
- Đặt chế độ phát và âm lượng của video.
- Cuối cùng, lưu bản trình bày bằng phương thức Presentation.Save (String, SaveFormat).
Mẫu mã sau đây cho biết cách nhúng video vào bản trình bày PowerPoint bằng C#.
// Khởi tạo lớp Trình bày đại diện cho PPTX
using (Presentation pres = new Presentation())
{
// Tải trang trình bày đầu tiên
ISlide sld = pres.Slides[0];
// Thêm video vào bản trình bày
IVideo vid = pres.Videos.AddVideo(new FileStream("Wildlife.mp4", FileMode.Open));
// Thêm khung video
IVideoFrame vf = sld.Shapes.AddVideoFrame(50, 150, 300, 350, vid);
// Gán video vào khung video
vf.EmbeddedVideo = vid;
// Đặt chế độ phát và âm lượng của video
vf.PlayMode = VideoPlayModePreset.Auto;
vf.Volume = AudioVolumeMode.Loud;
// Ghi tệp PPTX vào đĩa
pres.Save("VideoFrame_out.pptx", SaveFormat.Pptx);
}
Nhúng video vào bản trình bày từ nguồn web
Bạn cũng có thể nhúng video vào bản trình bày PowerPoint từ nguồn web. Sau đây là các bước để đạt được điều này.
- Đầu tiên, tải tệp PowerPoint hoặc tạo tệp mới bằng lớp Trình bày.
- Sau đó, lấy tham chiếu của trang trình bày mong muốn trong đối tượng ISlide.
- Thêm khung video mới trong trang chiếu bằng cách chỉ định URL của video trong phương thức ISlide.Shapes.AddVideoFrame (single, single, single, single, String).
- Lấy tham chiếu của khung video vào đối tượng IVideoFrame.
- Đặt chế độ phát và âm lượng của video.
- Đặt hình thu nhỏ của video bằng WebClient.
- Lưu bản trình bày bằng phương thức Presentation.Save (String, SaveFormat).
Mẫu mã sau đây cho biết cách nhúng video vào bản trình bày từ một nguồn web.
using (Presentation pres = new Presentation())
{
// ID video
string videoId = "Tj75Arhq5ho";
// Thêm khung video
IVideoFrame videoFrame = pres.Slides[0].Shapes.AddVideoFrame(10, 10, 427, 240, "https://www.youtube.com/embed/" + videoId);
videoFrame.PlayMode = VideoPlayModePreset.Auto;
// Tải hình thu nhỏ
using (WebClient client = new WebClient())
{
string thumbnailUri = "http://img.youtube.com/vi/" + videoId + "/hqdefault.jpg";
videoFrame.PictureFormat.Picture.Image = pres.Images.AddImage(client.DownloadData(thumbnailUri));
}
// Lưu bản trình bày
pres.Save("AddVideoFrameFromWebSource_out.pptx", SaveFormat.Pptx);
}
Trích xuất Video từ Bản trình bày PowerPoint trong C#
Aspose.Slides for .NET cũng cho phép bạn trích xuất video từ bản trình bày. Dưới đây là các bước đơn giản để đạt được điều này.
- Đầu tiên, tải tệp PowerPoint bằng lớp Trình bày.
- Sau đó, lặp qua từng ISlide trong bộ sưu tập Presentation.Slides.
- Đối với mỗi đối tượng ISlide, lặp qua tập hợp IShape trong đó.
- Nếu IShape là VideoFrame, thì hãy giải nén và lưu video được nhúng.
Mẫu mã sau đây cho thấy cách trích xuất video từ bản trình bày PowerPoint bằng C#.
// Tải tệp bản trình bày
Presentation presentation = new Presentation("Video.pptx");
// Lặp qua các trang trình bày trong bản trình bày
foreach (ISlide slide in presentation.Slides)
{
// Lặp qua các hình dạng
foreach (IShape shape in presentation.Slides[0].Shapes)
{
if (shape is VideoFrame)
{
// Trích xuất và lưu video
IVideoFrame vf = shape as IVideoFrame;
String type = vf.EmbeddedVideo.ContentType;
int ss = type.LastIndexOf('/');
type = type.Remove(0, type.LastIndexOf('/') + 1);
Byte[] buffer = vf.EmbeddedVideo.BinaryData;
using (FileStream stream = new FileStream("NewVideo_out." + type, FileMode.Create, FileAccess.Write, FileShare.Read))
{
stream.Write(buffer, 0, buffer.Length);
}
}
}
}
Nhận giấy phép API miễn phí
Bạn có thể sử dụng Aspose.Slides for .NET mà không có giới hạn đánh giá bằng cách yêu cầu giấy phép tạm thời.
Sự kết luận
Trong bài này, bạn đã học cách nhúng video vào bản trình bày PowerPoint bằng C#. Hơn nữa, bạn đã thấy cách trích xuất video từ bản trình bày theo chương trình. Ngoài ra, bạn có thể truy cập tài liệu để khám phá thêm về Aspose.Slides for .NET. Ngoài ra, bạn có thể đăng các truy vấn của mình lên diễn đàn của chúng tôi.
Xem thêm
- Tạo bản trình bày MS PowerPoint trong C#
- Chuyển đổi PowerPoint PPTX / PPT sang PNG hình ảnh trong C#
- Đặt Nền trang chiếu trong Bản trình bày PowerPoint bằng C#
- Tạo hình thu nhỏ cho PowerPoint PPTX hoặc PPT bằng C#
- Áp dụng Hoạt ảnh cho Văn bản trong PowerPoint bằng C#
- Tách bản trình bày PowerPoint bằng C#