package com.aspose.slides.examples.Presentation.Conversion; import com.aspose.slides.HtmlFormatter; import com.aspose.slides.HtmlOptions; import com.aspose.slides.IHtmlFormattingController; import com.aspose.slides.IHtmlGenerator; import com.aspose.slides.IPresentation; import com.aspose.slides.IShape; import com.aspose.slides.ISlide; import com.aspose.slides.Presentation; import com.aspose.slides.SaveFormat; import com.aspose.slides.examples.Utils; public class ConvertingAnIndividualSlideToHTML { public static void main(String[] args) { CustomHtmlExport(); } public static void CustomHtmlExport() { // The path to the documents directory. String dataDir = Utils.getDataDir(ConvertingAnIndividualSlideToHTML.class); // Instantiate a Presentation object that represents a presentation file Presentation pres = new Presentation(dataDir + "Presentation.pptx"); // Setting HTML Options HtmlOptions opts = new HtmlOptions(); opts.setHtmlFormatter(HtmlFormatter.createCustomFormatter(new CustomFormattingController())); // Saving to individual files for (int i = 0; i < pres.getSlides().size(); i++) pres.save(dataDir + "slide" + (i + 1) + ".html", new int[] { i + 1 }, SaveFormat.Html, opts); } private static class CustomFormattingController implements IHtmlFormattingController { private String SlideHeader = "<div class=\"slide\" name=\"slide\" id=\"slide{0}\">"; private String SlideFooter = "</div>"; public CustomFormattingController() { } public void writeDocumentStart(IHtmlGenerator generator, IPresentation presentation) { } public void writeDocumentEnd(IHtmlGenerator generator, IPresentation presentation) { } public void writeSlideStart(IHtmlGenerator generator, ISlide slide) { generator.addHtml(String.format(SlideHeader, generator.getSlideIndex() + 1)); } public void writeSlideEnd(IHtmlGenerator generator, ISlide slide) { generator.addHtml(SlideFooter); } public void writeShapeStart(IHtmlGenerator generator, IShape shape) { } public void writeShapeEnd(IHtmlGenerator generator, IShape shape) { } } }