PowerPoint-Präsentationen auf Android in HTML konvertieren
Übersicht
Dieser Artikel erklärt, wie man PowerPoint‑Präsentationen mit Java in das HTML‑Format konvertiert. Er behandelt die folgenden Themen.
- PowerPoint nach HTML in Java konvertieren
- PPT nach HTML in Java konvertieren
- PPTX nach HTML in Java konvertieren
- ODP nach HTML in Java konvertieren
- PowerPoint‑Folie nach HTML in Java konvertieren
PowerPoint nach HTML unter Android
Für Java‑Beispielcode zum Konvertieren von PowerPoint nach HTML siehe bitte den Abschnitt weiter unten, d.h. Convert PowerPoint to HTML. Der Code kann mehrere Formate wie PPT, PPTX und ODP im Presentation‑Objekt laden und als HTML‑Format speichern.
Über die PowerPoint‑zu‑HTML‑Konvertierung
Mit Aspose.Slides für Android via Java können Anwendungen und Entwickler eine PowerPoint‑Präsentation in HTML konvertieren: PPTX zu HTML oder PPT zu HTML.
Aspose.Slides bietet viele Optionen (hauptsächlich aus der Klasse HtmlOptions), die den PowerPoint‑zu‑HTML‑Konvertierungsprozess definieren:
- Eine gesamte PowerPoint‑Präsentation nach HTML konvertieren.
- Eine bestimmte Folie in einer PowerPoint‑Präsentation nach HTML konvertieren.
- Präsentationsmedien (Bilder, Videos usw.) nach HTML konvertieren.
- Eine PowerPoint‑Präsentation in responsives HTML konvertieren.
- Eine PowerPoint‑Präsentation nach HTML konvertieren, wobei Rednernotizen ein- oder ausgeschlossen werden.
- Eine PowerPoint‑Präsentation nach HTML konvertieren, wobei Kommentare ein- oder ausgeschlossen werden.
- Eine PowerPoint‑Präsentation nach HTML konvertieren, mit originalen oder eingebetteten Schriften.
- Eine PowerPoint‑Präsentation nach HTML konvertieren, wobei der neue CSS‑Stil verwendet wird.
Mit seiner eigenen API hat Aspose kostenlose Präsentation zu HTML-Konverter entwickelt: PPT zu HTML, PPTX zu HTML, ODP zu HTML usw.
Vielleicht möchten Sie weitere kostenlose Konverter von Aspose ansehen.
Note
Neben den hier beschriebenen Konvertierungsprozessen unterstützt Aspose.Slides auch folgende Konvertierungsoperationen, die das HTML‑Format betreffen:
PowerPoint nach HTML konvertieren
Mit Aspose.Slides können Sie eine gesamte PowerPoint‑Präsentation wie folgt nach HTML konvertieren:
- Erstellen Sie eine Instanz der Presentation Klasse.
- Verwenden Sie die Methode Save , um das Objekt als HTML‑Datei zu speichern.
Dieser Code zeigt, wie Sie eine PowerPoint‑Präsentation in Java nach HTML konvertieren:
// Instanziiert ein Presentation-Objekt, das eine Präsentationsdatei repräsentiert
Presentation pres = new Presentation("Convert_HTML.pptx");
try {
HtmlOptions htmlOpt = new HtmlOptions();
htmlOpt.getNotesCommentsLayouting().setNotesPosition(NotesPositions.BottomFull);
htmlOpt.setHtmlFormatter(HtmlFormatter.createDocumentFormatter("", false));
// Speichert die Präsentation als HTML
pres.save("ConvertWholePresentationToHTML_out.html", SaveFormat.Html, htmlOpt);
} finally {
if (pres != null) pres.dispose();
}
PowerPoint zu responsivem HTML konvertieren
Aspose.Slides stellt die Klasse ResponsiveHtmlController bereit, mit der Sie responsive HTML‑Dateien erzeugen können. Dieser Code zeigt, wie Sie eine PowerPoint‑Präsentation in Java zu responsive HTML konvertieren:
// Instanziiere ein Presentation-Objekt, das eine Präsentationsdatei repräsentiert
Presentation pres = new Presentation("Convert_HTML.pptx");
try {
ResponsiveHtmlController controller = new ResponsiveHtmlController();
HtmlOptions htmlOptions = new HtmlOptions();
htmlOptions.setHtmlFormatter(HtmlFormatter.createCustomFormatter(controller));
// Speichert die Präsentation als HTML
pres.save("ConvertPresentationToResponsiveHTML_out.html", SaveFormat.Html, htmlOptions);
} finally {
if (pres != null) pres.dispose();
}
PowerPoint zu HTML mit Notizen konvertieren
Dieser Code zeigt, wie Sie eine PowerPoint‑Präsentation in Java zu HTML mit Notizen konvertieren:
Presentation pres = new Presentation("Presentation.pptx");
try {
HtmlOptions opt = new HtmlOptions();
INotesCommentsLayoutingOptions options = opt.getNotesCommentsLayouting();
options.setNotesPosition(NotesPositions.BottomFull);
// Speichern der Notizseiten
pres.save("Output.html", SaveFormat.Html, opt);
} finally {
if (pres != null) pres.dispose();
}
PowerPoint zu HTML mit Originalschriften konvertieren
Aspose.Slides bietet die Klasse EmbedAllFontsHtmlController an, mit der Sie beim Konvertieren einer Präsentation zu HTML alle Schriftarten einbetten können.
Um das Einbetten bestimmter Schriftarten zu verhindern, können Sie dem parametrisierten Konstruktor der Klasse EmbedAllFontsHtmlController ein Array von Schriftartnamen übergeben. Beliebte Schriftarten wie Calibri oder Arial müssen in einer Präsentation nicht eingebettet werden, da die meisten Systeme diese bereits enthalten. Werden diese Schriftarten eingebettet, wird das resultierende HTML‑Dokument unnötig groß.
Die Klasse EmbedAllFontsHtmlController unterstützt Vererbung und stellt die Methode WriteFont bereit, die überschrieben werden soll.
Presentation pres = new Presentation("input.pptx");
try {
// Standardpräsentationsschriften ausschließen
String[] fontNameExcludeList = { "Calibri", "Arial" };
EmbedAllFontsHtmlController embedFontsController = new EmbedAllFontsHtmlController(fontNameExcludeList);
HtmlOptions htmlOptionsEmbed = new HtmlOptions();
htmlOptionsEmbed.setHtmlFormatter(HtmlFormatter.createCustomFormatter(embedFontsController));
pres.save("input-PFDinDisplayPro-Regular-installed.html", SaveFormat.Html, htmlOptionsEmbed);
} finally {
if (pres != null) pres.dispose();
}
PowerPoint zu HTML mit hochwertigen Bildern konvertieren
Standardmäßig gibt Aspose.Slides beim Konvertieren von PowerPoint zu HTML ein kleines HTML mit Bildern bei 72 DPI und gelöschten Beschnittbereichen aus. Um HTML‑Dateien mit höherwertigen Bildern zu erhalten, müssen Sie die Eigenschaft PicturesCompression (aus der Klasse HtmlOptions) auf 96 (d.h. PicturesCompression.Dpi96) oder höhere Werte setzen.
Dieser Java‑Code zeigt, wie Sie eine PowerPoint‑Präsentation zu HTML konvertieren und dabei hochwertige Bilder mit 150 DPI erhalten (d.h. PicturesCompression.Dpi150):
Presentation pres = new Presentation("InputDoc.pptx");
try {
HtmlOptions htmlOpts = new HtmlOptions();
htmlOpts.setPicturesCompression(PicturesCompression.Dpi150);
pres.save("OutputDoc-dpi150.html", SaveFormat.Html, htmlOpts);
} finally {
if (pres != null) pres.dispose();
}
Dieser Java‑Code zeigt, wie Sie HTML mit Bildern in voller Qualität ausgeben:
Presentation pres = new Presentation("InputDoc.pptx");
try {
HtmlOptions htmlOpts = new HtmlOptions();
htmlOpts.setDeletePicturesCroppedAreas(false);
pres.save("Outputdoc-noCrop.html", SaveFormat.Html, htmlOpts);
} finally {
if (pres != null) pres.dispose();
}
Eine Folie zu HTML konvertieren
Um eine bestimmte Folie in einer PowerPoint‑Präsentation zu HTML zu konvertieren, müssen Sie dieselbe Klasse Presentation instanziieren (die zum Konvertieren ganzer Präsentationen zu HTML verwendet wird) und dann die Methode Save verwenden, um die Datei als HTML zu speichern. Die Klasse HtmlOptions kann zur Angabe zusätzlicher Konvertierungsoptionen verwendet werden:
Dieser Java‑Code zeigt, wie Sie eine Folie einer PowerPoint‑Präsentation zu HTML konvertieren:
Presentation pres = new Presentation("Individual-Slide.pptx");
try {
HtmlOptions htmlOptions = new HtmlOptions();
htmlOptions.getNotesCommentsLayouting().setNotesPosition(NotesPositions.BottomFull);
htmlOptions.setHtmlFormatter(HtmlFormatter.createCustomFormatter(new CustomFormattingController()));
// Datei speichern
for (int i = 0; i < pres.getSlides().size(); i++)
pres.save("Individual Slide" + (i + 1) + "_out.html", new int[]{i + 1},SaveFormat.Html, htmlOptions);
} finally {
if (pres != null) pres.dispose();
}
public class CustomFormattingController implements IHtmlFormattingController
{
@Override
public void writeDocumentStart(IHtmlGenerator generator, IPresentation presentation) { }
@Override
public void writeDocumentEnd(IHtmlGenerator generator, IPresentation presentation) { }
@Override
public void writeSlideStart(IHtmlGenerator generator, ISlide slide)
{
generator.addHtml(String.format(SlideHeader, generator.getSlideIndex() + 1));
}
@Override
public void writeSlideEnd(IHtmlGenerator generator, ISlide slide)
{
generator.addHtml(SlideFooter);
}
@Override
public void writeShapeStart(IHtmlGenerator generator, IShape shape) { }
@Override
public void writeShapeEnd(IHtmlGenerator generator, IShape shape) { }
private final String SlideHeader = "<div class=\"slide\" name=\"slide\" id=\"slide%d\">";
private final String SlideFooter = "</div>";
}
CSS und Bilder beim Exportieren zu HTML speichern
Mit neuen CSS‑Stildateien können Sie das Aussehen der HTML‑Datei, die aus dem PowerPoint‑zu‑HTML‑Konvertierungsprozess entsteht, leicht ändern.
Der Java‑Code in diesem Beispiel zeigt, wie Sie überschreibbare Methoden verwenden, um ein benutzerdefiniertes HTML‑Dokument mit einem Verweis auf eine CSS‑Datei zu erstellen:
Presentation pres = new Presentation("pres.pptx");
try {
CustomHeaderAndFontsController htmlController = new CustomHeaderAndFontsController("styles.css");
HtmlOptions options = new HtmlOptions();
options.setHtmlFormatter(HtmlFormatter.createCustomFormatter(htmlController));
pres.save("pres.html", SaveFormat.Html, options);
} finally {
if (pres != null) pres.dispose();
}
public class CustomHeaderAndFontsController extends EmbedAllFontsHtmlController
{
private final int m_basePath = 0;
// Benutzerdefinierte Header-Vorlage
final static String Header = "<!DOCTYPE html>\n" +
"<html>\n" +
"<head>\n" +
"<meta http-equiv=\"Content-Type\" content=\"text/html; charset=UTF-8\">\n" +
"<meta http-equiv=\"X-UA-Compatible\" content=\"IE=9\">\n" +
"<link rel=\"stylesheet\" type=\"text/css\" href=\"%s\">\n" +
"</head>";
private final String m_cssFileName;
public CustomHeaderAndFontsController(String cssFileName)
{
m_cssFileName = cssFileName;
}
public void writeDocumentStart(IHtmlGenerator generator, IPresentation presentation)
{
generator.addHtml(String.format(Header, m_cssFileName));
writeAllFonts(generator, presentation);
}
public void writeAllFonts(IHtmlGenerator generator, IPresentation presentation)
{
generator.addHtml("<!-- Embedded fonts -->");
super.writeAllFonts(generator, presentation);
}
}
Alle Schriften beim Konvertieren einer Präsentation zu HTML verlinken
Wenn Sie Schriftarten nicht einbetten möchten (um die Größe des resultierenden HTML nicht zu vergrößern), können Sie alle Schriftarten verlinken, indem Sie Ihre eigene LinkAllFontsHtmlController‑Version implementieren.
Dieser Java‑Code zeigt, wie Sie eine PowerPoint‑Präsentation zu HTML konvertieren und dabei alle Schriftarten verlinken und “Calibri” sowie “Arial” ausschließen (da sie bereits im System vorhanden sind):
Presentation pres = new Presentation("pres.pptx");
try
{
//Standard-Präsentationsschriften ausschließen
String[] fontNameExcludeList = { "Calibri", "Arial" };
LinkAllFontsHtmlController linkcont = new LinkAllFontsHtmlController(fontNameExcludeList,"C:/Windows/Fonts/");
HtmlOptions htmlOptionsEmbed = new HtmlOptions();
htmlOptionsEmbed.setHtmlFormatter(HtmlFormatter.createCustomFormatter((IHtmlFormattingController) linkcont));
pres.save("pres.html", SaveFormat.Html, htmlOptionsEmbed);
}
finally {
if (pres != null) pres.dispose();
}
Dieser Java‑Code zeigt, wie LinkAllFontsHtmlController implementiert wird:
public class LinkAllFontsHtmlController extends EmbedAllFontsHtmlController
{
private final String m_basePath;
public LinkAllFontsHtmlController(String[] fontNameExcludeList, String basePath)
{
super(fontNameExcludeList);
m_basePath = basePath;
}
public void writeFont
(
IHtmlGenerator generator,
IFontData originalFont,
IFontData substitutedFont,
String fontStyle,
String fontWeight,
byte[] fontData)
{
try {
String fontName = substitutedFont == null ? originalFont.getFontName() : substitutedFont.getFontName();
String path = fontName + ".woff"; // einige Pfadbereinigungen können erforderlich sein
Files.write(new File(m_basePath + path).toPath(), fontData, StandardOpenOption.CREATE);
generator.addHtml("<style>");
generator.addHtml("@font-face { ");
generator.addHtml("font-family: '" + fontName + "'; ");
generator.addHtml("src: url('" + path + "')");
generator.addHtml(" }");
generator.addHtml("</style>");
} catch (IOException ex) {
ex.printStackTrace();
}
}
}
PowerPoint zu responsivem HTML konvertieren
Dieser Java‑Code zeigt, wie Sie eine PowerPoint‑Präsentation zu responsive HTML konvertieren:
Presentation pres = new Presentation("SomePresentation.pptx");
try {
HtmlOptions saveOptions = new HtmlOptions();
saveOptions.setSvgResponsiveLayout(true);
pres.save("SomePresentation-out.html", SaveFormat.Html, saveOptions);
} finally {
if (pres != null) pres.dispose();
}
Mediendateien zu HTML exportieren
Mit Aspose.Slides für Android via Java können Sie Mediendateien wie folgt exportieren:
- Erstellen Sie eine Instanz der Klasse Presentation.
- Holen Sie sich eine Referenz auf die Folie.
- Fügen Sie der Folie ein Video hinzu.
- Schreiben Sie die Präsentation als HTML‑Datei.
Dieser Java‑Code zeigt, wie Sie ein Video zur Präsentation hinzufügen und anschließend als HTML speichern:
// Laden einer Präsentation
Presentation pres = new Presentation();
try {
String path = "./out/";
final String fileName = "ExportMediaFiles_out.html";
final String baseUri = "http://www.example.com/";
byte[] videoData = Files.readAllBytes(Paths.get("my_video.avi"));
IVideo video = pres.getVideos().addVideo(videoData);
pres.getSlides().get_Item(0).getShapes().addVideoFrame(10, 10, 100, 100, video);
VideoPlayerHtmlController controller = new VideoPlayerHtmlController(path, fileName, baseUri);
// HTML-Optionen festlegen
HtmlOptions htmlOptions = new HtmlOptions(controller);
SVGOptions svgOptions = new SVGOptions(controller);
htmlOptions.setHtmlFormatter(HtmlFormatter.createCustomFormatter(controller));
htmlOptions.setSlideImageFormat(SlideImageFormat.svg(svgOptions));
// Speichern der Datei
pres.save(fileName, SaveFormat.Html, htmlOptions);
} catch(Exception e) {
} finally {
if (pres != null) pres.dispose();
}
FAQ
Wie ist die Leistung von Aspose.Slides beim Konvertieren mehrerer Präsentationen zu HTML?
Die Leistung hängt von Größe und Komplexität der Präsentationen ab. Aspose.Slides ist für Batch‑Operationen sehr effizient und skalierbar. Um bei der Konvertierung vieler Präsentationen optimale Leistung zu erreichen, wird empfohlen, nach Möglichkeit Multithreading oder Parallelverarbeitung zu nutzen.
Unterstützt Aspose.Slides das Exportieren von Hyperlinks zu HTML?
Ja, Aspose.Slides unterstützt das Exportieren eingebetteter Hyperlinks nach HTML vollständig. Beim Konvertieren von Präsentationen ins HTML‑Format werden Hyperlinks automatisch beibehalten und bleiben anklickbar.
Gibt es ein Limit für die Anzahl der Folien beim Konvertieren von Präsentationen zu HTML?
Es gibt kein Limit für die Folienzahl bei Verwendung von Aspose.Slides. Sie können Präsentationen jeder Größe konvertieren. Bei Präsentationen mit einer sehr großen Folienzahl kann die Leistung jedoch von den verfügbaren Ressourcen Ihres Servers oder Systems abhängen.
