Utwórz przeglądarkę prezentacji w Pythonie

Wprowadzenie

Aspose.Slides dla Pythona służy do tworzenia plików prezentacji ze slajdami. Te slajdy można przeglądać, otwierając prezentacje w programie Microsoft PowerPoint, na przykład. Jednak deweloperzy mogą czasami potrzebować wyświetlać slajdy jako obrazy w preferowanym przeglądarce zdjęć lub używać ich w niestandardowej przeglądarce prezentacji. W takich przypadkach Aspose.Slides umożliwia eksportowanie pojedynczych slajdów jako obrazy. Ten artykuł wyjaśnia, jak to zrobić.

Wygeneruj obraz SVG ze slajdu

Aby wygenerować obraz SVG ze slajdu prezentacji przy użyciu Aspose.Slides, wykonaj poniższe kroki:

  1. Utwórz instancję klasy Presentation.
  2. Uzyskaj odwołanie do slajdu po jego indeksie.
  3. Otwórz strumień pliku.
  4. Zapisz slajd jako obraz SVG do strumienia pliku.
import aspose.slides as slides

slide_index = 0

with slides.Presentation("sample.pptx") as presentation:
    slide = presentation.slides[slide_index]

    with open("output.svg", "wb") as svg_stream:
        slide.write_as_svg(svg_stream)

Utwórz miniaturę slajdu

Aspose.Slides pomaga generować miniatury slajdów. Aby wygenerować miniaturę slajdu przy użyciu Aspose.Slides, wykonaj poniższe kroki:

  1. Utwórz instancję klasy Presentation.
  2. Uzyskaj odwołanie do slajdu po jego indeksie.
  3. Utwórz obraz miniatury referowanego slajdu w żądanej skali.
  4. Zapisz obraz miniatury w preferowanym formacie obrazu.
import aspose.slides as slides

slide_index = 0
scale_x = 1
scale_y = scale_x

with slides.Presentation("sample.pptx") as presentation:
    slide = presentation.slides[slide_index]

    with slide.get_image(scale_x, scale_y) as image:
        image.save("output.jpg", slides.ImageFormat.JPEG)

Utwórz miniaturę slajdu o wymiarach określonych przez użytkownika

Aby utworzyć obraz miniatury slajdu o wymiarach określonych przez użytkownika, wykonaj poniższe kroki:

  1. Utwórz instancję klasy Presentation.
  2. Uzyskaj odwołanie do slajdu po jego indeksie.
  3. Wygeneruj obraz miniatury referowanego slajdu o podanych wymiarach.
  4. Zapisz obraz miniatury w preferowanym formacie obrazu.
import aspose.slides as slides
import aspose.pydrawing as pydrawing

slide_index = 0
slide_size = pydrawing.Size(1200, 800)

with slides.Presentation("sample.pptx") as presentation:
    slide = presentation.slides[slide_index]

    with slide.get_image(slide_size) as image:
        image.save("output.jpg", slides.ImageFormat.JPEG)

Utwórz miniaturę slajdu z notatkami prelegenta

Aby wygenerować miniaturę slajdu z notatkami prelegenta przy użyciu Aspose.Slides, wykonaj poniższe kroki:

  1. Utwórz instancję klasy RenderingOptions.
  2. Użyj właściwości RenderingOptions.slides_layout_options, aby ustawić pozycję notatek prelegenta.
  3. Utwórz instancję klasy Presentation.
  4. Uzyskaj odwołanie do slajdu po jego indeksie.
  5. Wygeneruj obraz miniatury referowanego slajdu przy użyciu opcji renderowania.
  6. Zapisz obraz miniatury w preferowanym formacie obrazu.
slide_index = 0

layout_options = slides.export.NotesCommentsLayoutingOptions()
layout_options.notes_position = slides.export.NotesPositions.BOTTOM_TRUNCATED

rendering_options = slides.export.RenderingOptions()
rendering_options.slides_layout_options = layout_options

with slides.Presentation("sample.pptx") as presentation:
    slide = presentation.slides[slide_index]

    with slide.get_image(rendering_options) as image:
        image.save("output.png", slides.ImageFormat.PNG)

Przykład na żywo

Wypróbuj darmową aplikację Aspose.Slides Viewer, aby zobaczyć, co możesz zaimplementować przy użyciu API Aspose.Slides:

Online PowerPoint Viewer

FAQ

Czy mogę osadzić przeglądarkę prezentacji w aplikacji internetowej ASP.NET?

Tak. Możesz używać Aspose.Slides po stronie serwera do renderowania slajdów jako obrazy lub HTML i wyświetlać je w przeglądarce. Funkcje nawigacji i powiększania można zaimplementować w JavaScript, aby uzyskać interaktywne wrażenia.

Jaki jest najlepszy sposób wyświetlania slajdów w niestandardowej przeglądarce .NET?

Zalecane podejście polega na renderowaniu każdego slajdu jako obraz (np. PNG lub SVG) lub konwersji do HTML przy użyciu Aspose.Slides, a następnie wyświetlenie wyniku w kontrolce PictureBox (dla aplikacji desktopowych) lub w kontenerze HTML (dla aplikacji webowych).

Jak radzić sobie z dużymi prezentacjami zawierającymi wiele slajdów?

W przypadku dużych prezentacji warto rozważyć leniwe ładowanie lub renderowanie slajdów na żądanie. Oznacza to generowanie treści slajdu tylko wtedy, gdy użytkownik do niego przejdzie, co zmniejsza zużycie pamięci i czas ładowania.