Miniatury są powszechnie używane do tworzenia mniejszych wersji większych obrazów. Ułatwiają przeglądanie lub przewijanie listy obrazów. MS PowerPoint udostępnia także miniatury slajdów w prezentacji. Korzystając z miniatur slajdów, możesz łatwo przeglądać prezentację i przechodzić do konkretnego slajdu. W tym artykule dowiesz się, jak generować miniatury PowerPoint PPTX lub PPT przy użyciu języka C#. Może to być przydatne w scenariuszach, na przykład gdy trzeba utworzyć własną przeglądarkę PowerPoint w przeglądarce lub na komputerze.
- .NET API do generowania miniatur dla programu PowerPoint PPTX/PPT
- Generuj miniatury dla PPTX/PPT przy użyciu C#
- Generuj miniatury o wymiarach zdefiniowanych przez użytkownika
.NET API do generowania miniatur dla programu PowerPoint PPTX/PPT
Do generowania miniatur dla prezentacji PPTX lub PPT użyjemy Aspose.Slides for .NET. Jest to potężny interfejs API, który umożliwia tworzenie i manipulowanie dokumentami PowerPoint i OpenOffice. Ponadto umożliwia konwersję prezentacji do innych formatów plików. Możesz pobrać interfejs API lub zainstalować go za pomocą NuGet.
PM> Install-Package Aspose.Slides.NET
Generuj miniatury dla PPTX lub PPT przy użyciu C#
Poniżej przedstawiono kroki generowania miniatur prezentacji PPTX przy użyciu języka C#.
- Najpierw utwórz instancję klasy Presentation, aby załadować prezentację.
- Przejrzyj w pętli każdy ISlide w kolekcji Presentation.Slides.
- Wygeneruj miniaturę każdego slajdu za pomocą metody ISlide.GetThumbnail(1f, 1f) i pobierz odniesienie do miniatury do obiektu Bitmap.
- Na koniec zapisz miniaturę w żądanym formacie obrazu, używając metody Bitmap.Save(String, System.Drawing.Imaging.ImageFormat).
Poniższy przykładowy kod pokazuje, jak generować miniatury prezentacji PPTX przy użyciu języka C#.
// Załaduj prezentację PowerPoint
using (Presentation pres = new Presentation("presentation.pptx"))
{
foreach (ISlide sld in pres.Slides)
{
// Utwórz obraz w pełnej skali
Bitmap bmp = sld.GetThumbnail(1f, 1f);
// Zapisz obraz na dysku w formacie JPEG
bmp.Save(String.Format("slide_{0}.jpg", sld.SlideNumber), System.Drawing.Imaging.ImageFormat.Jpeg);
}
}
Generuj miniatury o wymiarach zdefiniowanych przez użytkownika
Możesz również dostosować wymiary miniatur do swoich wymagań. Można to osiągnąć za pomocą właściwości Presentation.SlideSize.Size.Width i Presentation.SlideSize.Size.Height. Poniżej przedstawiono kroki, aby wykonać tę operację.
- Najpierw utwórz instancję klasy Presentation, aby załadować prezentację.
- Następnie ustaw żądane wymiary miniatur i przeskaluj wartości za pomocą właściwości Width i Height.
- Przejdź przez każdy ISlide w kolekcji Presentation.Slides.
- Wygeneruj miniaturę każdego slajdu za pomocą metody ISlide.GetThumbnail(Single, Single) i pobierz odniesienie do miniatury do obiektu Bitmap.
- Na koniec zapisz miniaturę w żądanym formacie obrazu, używając metody Bitmap.Save(String, System.Drawing.Imaging.ImageFormat).
Poniższy przykładowy kod pokazuje, jak generować miniatury PPTX o niestandardowych wymiarach.
// Załaduj prezentację PowerPoint
using (Presentation pres = new Presentation("presentation.pptx"))
{
// Wymiar zdefiniowany przez użytkownika
int desiredX = 1200;
int desiredY = 800;
// Uzyskiwanie przeskalowanej wartości X i Y
float ScaleX = (float)(1.0 / pres.SlideSize.Size.Width) * desiredX;
float ScaleY = (float)(1.0 / pres.SlideSize.Size.Height) * desiredY;
foreach (ISlide sld in pres.Slides)
{
// Utwórz obraz w pełnej skali
Bitmap bmp = sld.GetThumbnail(ScaleX, ScaleY);
// Zapisz obraz na dysku w formacie JPEG
bmp.Save(String.Format("slide_{0}.jpg", sld.SlideNumber), System.Drawing.Imaging.ImageFormat.Jpeg);
}
}
Uzyskaj bezpłatną licencję API
Możesz używać Aspose.Slides for .NET bez ograniczeń ewaluacyjnych, prosząc o licencję tymczasową.
Wniosek
W tym artykule nauczyłeś się, jak generować miniatury PowerPoint PPTX lub PPT przy użyciu języka C#. Ponadto widziałeś, jak generować miniatury o pożądanych wymiarach. Ponadto możesz odwiedzić dokumentację, aby zapoznać się z innymi funkcjami API. Możesz też swobodnie informować nas o swoich zapytaniach za pośrednictwem naszego forum.