Konwertuj prezentacje do HTML5 w JavaScript
Przegląd
Ten artykuł wyjaśnia, jak konwertować prezentacje PowerPoint do formatu HTML5 przy użyciu Aspose.Slides dla Node.js za pośrednictwem Javy. Obejmuje podstawowy eksport, kontrolę animacji kształtów i przejść slajdów oraz układ komentarzy. Porównuje także wynikowy HTML5 z wyjściem opartym na SVG standardowego eksportu HTML.
Eksportuj PowerPoint do HTML5
Poniższy przykład wczytuje prezentację z katalogu roboczego i zapisuje ją w formacie HTML5. Używa domyślnych ustawień eksportu; kolejny przykład pokazuje, jak jawnie kontrolować odtwarzanie animacji. Zamień ścieżkę wejściową na ścieżkę do swojej prezentacji.
const aspose = { slides: require("aspose.slides.via.java") };
const presentation = new aspose.slides.Presentation("pres.pptx");
try {
presentation.save("pres.html", aspose.slides.SaveFormat.Html5);
} finally {
presentation.dispose();
}
Note
Oprócz dokumentu HTML, eksport zapisuje dodatkowe pliki CSS i JavaScript służące do stylizacji slajdów, animacji, efektów i nawigacji. Trzymaj te pliki razem z dokumentem HTML przy przenoszeniu lub publikowaniu wyniku. Wygenerowana strona również ładuje jQuery i Anime.js z publicznych CDN; bez nich nawigacja po slajdach i animacje nie działają.Aby wyeksportować bez odtwarzania animacji kształtów lub przejść slajdów, przekaż false do setAnimateShapes i setAnimateTransitions w Html5Options. Te ustawienia są niezależne, więc możesz włączyć jedno, wyłączając drugie. Przykład eksportuje prezentację z wyłączonymi obiema typami animacji w wygenerowanej stronie.
const aspose = { slides: require("aspose.slides.via.java") };
const html5Options = new aspose.slides.Html5Options();
html5Options.setAnimateShapes(false);
html5Options.setAnimateTransitions(false);
const presentation = new aspose.slides.Presentation("pres.pptx");
try {
presentation.save("pres5.html", aspose.slides.SaveFormat.Html5, html5Options);
} finally {
presentation.dispose();
}
Eksportuj PowerPoint do HTML
Standardowy eksport HTML używa innego podejścia renderowania: zawartość slajdu jest reprezentowana przez SVG wewnątrz strony HTML. Poniższy przykład konwertuje prezentację do dokumentu HTML przy użyciu tego podejścia renderowania.
const aspose = { slides: require("aspose.slides.via.java") };
const presentation = new aspose.slides.Presentation("pres.pptx");
try {
presentation.save("pres.html", aspose.slides.SaveFormat.Html);
} finally {
presentation.dispose();
}
Uproszczony znacznik poniżej ilustruje strukturę wygenerowanej strony. Element SVG zawiera wyrenderowaną zawartość slajdu; tekst zastępczy reprezentuje tę zawartość i nie jest rzeczywistym wynikiem eksportu.
<body>
<div class="slide" name="slide" id="slideslideIface1">
<svg version="1.1">
<g> THE SLIDE CONTENT GOES HERE </g>
</svg>
</div>
</body>
Warning
Eksport oparty na SVG nie udostępnia kształtów PowerPoint jako pojedynczych elementów HTML. Użyj eksportu HTML5, gdy potrzebujesz opcji animacji kształtów i przejść slajdów przedstawionych w tym artykule.Eksportuj PowerPoint do widoku slajdów HTML5
Eksport HTML5 tworzy stronę do przeglądania i nawigacji po slajdach prezentacji w przeglądarce. Ten przykład włącza zarówno setAnimateShapes jak i setAnimateTransitions, aby wyświetlany widok slajdów mógł odtwarzać efekty z oryginalnej prezentacji.
Użyj prezentacji, która już zawiera animacje kształtów i przejścia slajdów, aby zobaczyć efekt tych ustawień. Ich włączenie nie dodaje nowych efektów do slajdów, które ich nie mają. Po eksporcie otwórz wygenerowany dokument HTML5 w przeglądarce z dostępnymi plikami pomocniczymi.
const aspose = { slides: require("aspose.slides.via.java") };
const html5Options = new aspose.slides.Html5Options();
html5Options.setAnimateShapes(true);
html5Options.setAnimateTransitions(true);
const presentation = new aspose.slides.Presentation("pres.pptx");
try {
presentation.save("HTML5-slide-view.html", aspose.slides.SaveFormat.Html5, html5Options);
} finally {
presentation.dispose();
}
Konwertuj prezentację na dokument HTML5 z komentarzami
Możesz uwzględnić istniejące komentarze slajdów w wyjściu HTML5, aby czytelnicy mogli zobaczyć opinie obok zawartości slajdu. Przykład w tej sekcji zakłada, że źródłowa prezentacja zawiera komentarze, co ilustruje poniższy przykład. Eksportuje te komentarze; nie tworzy nowych.

Przekaż obiekt NotesCommentsLayoutingOptions do metody setSlidesLayoutOptions klasy Html5Options. Użyj setCommentsPosition aby wybrać Right z wyliczenia CommentsPositions, aby umieścić komentarze po prawej stronie każdego slajdu.
Poniższy przykład eksportuje prezentację do HTML5 z tym układem komentarzy. Prezentacja bez komentarzy nie będzie miała żadnego tekstu komentarza do wyświetlenia.
const aspose = { slides: require("aspose.slides.via.java") };
const layoutOptions = new aspose.slides.NotesCommentsLayoutingOptions();
layoutOptions.setCommentsPosition(aspose.slides.CommentsPositions.Right);
const html5Options = new aspose.slides.Html5Options();
html5Options.setSlidesLayoutOptions(layoutOptions);
const presentation = new aspose.slides.Presentation("sample.pptx");
try {
presentation.save("output.html", aspose.slides.SaveFormat.Html5, html5Options);
} finally {
presentation.dispose();
}

Wyklucz hiperłącza JavaScript podczas eksportu
Załóżmy, że hyperlinks.pptx zawiera tekst z odnośnikiem javascript:alert('Hello') oraz zwykły odnośnik https://example.com/. Aby wykluczyć hiperłącze JavaScript podczas eksportu, przekaż true do SaveOptions.setSkipJavaScriptLinks. Domyślna wartość to false, więc te odnośniki nie są filtrowane, chyba że włączysz tę opcję.
Poniższy przykład wczytuje prezentację z katalogu roboczego i eksportuje ją przy użyciu Html5Options:
const aspose = { slides: require("aspose.slides.via.java") };
const html5Options = new aspose.slides.Html5Options();
html5Options.setSkipJavaScriptLinks(true);
const presentation = new aspose.slides.Presentation("hyperlinks.pptx");
try {
presentation.save("filtered-html5.html", aspose.slides.SaveFormat.Html5, html5Options);
} finally {
presentation.dispose();
}
Wyeksportowany plik pomija hiperłącze JavaScript, zachowując jednocześnie jego tekst i zwykły odnośnik HTTPS. Źródłowa prezentacja pozostaje niezmieniona.
Ta opcja filtruje hiperłącza JavaScript; nie usuwa wszystkich skryptów ani innej aktywnej zawartości, ani nie gwarantuje zgodności z CSP. Na przykład wyjście HTML5 nadal zawiera skrypty do nawigacji po slajdach i animacji.
FAQ
Czy mogę kontrolować, czy animacje obiektów i przejścia slajdów będą odtwarzane w HTML5?
Tak, eksport HTML5 udostępnia osobne opcje włączania lub wyłączania shape animations i slide transitions.
Czy komentarze są obsługiwane i gdzie mogą być umieszczone względem slajdu?
Tak, istniejące komentarze mogą być uwzględnione w wyjściu HTML5 i umieszczone (na przykład po prawej stronie slajdu) za pomocą layout settings dla notatek i komentarzy.
Czy mogę pominąć odnośniki wywołujące JavaScript ze względów bezpieczeństwa lub CSP?
Tak, ustawienie setSkipJavaScriptLinks pozwala pominąć hiperłącza z wywołaniami JavaScript podczas zapisywania. Domyślna wartość to false. Zobacz Exclude JavaScript Hyperlinks During Export po przykład eksportu HTML5 i zakres filtru. To ustawienie nie usuwa JavaScript używanego przez przeglądarkę HTML5 do nawigacji i animacji.