java.io.IOException: The document has no pages. - PowerPoint to PDF -


i'm making javafx application convert powerpoint pdf. error:

exceptionconverter: java.io.ioexception: document has no pages 

i tried many ppt files didn't anything. files error. don't know what's problem.

package application;  import java.awt.color; import java.awt.dimension; import java.awt.graphics2d; import java.awt.geom.affinetransform; import java.awt.geom.rectangle2d; import java.awt.image.bufferedimage; import java.io.file; import java.io.fileinputstream; import java.io.fileoutputstream; import java.io.ioexception; import java.io.inputstream;  import com.itextpdf.text.document; import com.itextpdf.text.documentexception; import com.itextpdf.text.image; import com.itextpdf.text.rectangle; import com.itextpdf.text.pdf.pdfpcell; import com.itextpdf.text.pdf.pdfptable; import com.itextpdf.text.pdf.pdfwriter;  import org.apache.commons.io.filenameutils; import org.apache.poi.hslf.model.slide; import org.apache.poi.hslf.usermodel.slideshow; import org.apache.poi.xslf.usermodel.xmlslideshow; import org.apache.poi.xslf.usermodel.xslfslide;     public class ppview {         public static void showpowerpoint(file sfiles) throws exception {      file file = new file(sfiles.getabsolutepath());     string name=file.getname();     string destination= file.getabsolutepath();     string outdestination=file.getparent();     string filetype=filenameutils.getextension(destination);      fileinputstream = new fileinputstream(file);      double zoom = 2;          affinetransform @ = new affinetransform();         at.settoscale(zoom, zoom);          document pdfdocument = new document();         fileoutputstream outputstream = new fileoutputstream(outdestination+name+".pdf");          pdfwriter pdfwriter = pdfwriter.getinstance(pdfdocument, outputstream);         pdfptable table = new pdfptable(1);          pdfwriter.open();         pdfdocument.open();          dimension pgsize = null;         image slideimage = null;         bufferedimage img = null;          if (filetype.equalsignorecase(".ppt")) {              slideshow ppt = new slideshow(is);             pgsize = ppt.getpagesize();             slide slide[] = ppt.getslides();              pdfdocument.setpagesize(new rectangle((float) pgsize.getwidth(), (float) pgsize.getheight()));             pdfwriter.open();             pdfdocument.open();              (int = 0; < slide.length; i++) {                 img = new bufferedimage((int) math.ceil(pgsize.width * zoom), (int) math.ceil(pgsize.height * zoom), bufferedimage.type_int_rgb);                 graphics2d graphics = img.creategraphics();                  graphics.settransform(at);                  graphics.setpaint(color.white);                 graphics.fill(new rectangle2d.float(0, 0, pgsize.width, pgsize.height));                 slide[i].draw(graphics);                 graphics.getpaint();                 slideimage = image.getinstance(img, null);                 table.addcell(new pdfpcell(slideimage, true));          }     }           if (filetype.equalsignorecase(".pptx")) {              xmlslideshow ppt = new xmlslideshow(is);             pgsize = ppt.getpagesize();             xslfslide slide[] = ppt.getslides();             pdfdocument.setpagesize(new rectangle((float) pgsize.getwidth(), (float) pgsize.getheight()));             pdfwriter.open();             pdfdocument.open();                  (int = 0; < slide.length; i++) {                 img = new bufferedimage((int) math.ceil(pgsize.width * zoom), (int) math.ceil(pgsize.height * zoom), bufferedimage.type_int_rgb);                 graphics2d graphics = img.creategraphics();                 graphics.settransform(at);                  graphics.setpaint(color.white);                 graphics.fill(new rectangle2d.float(0, 0, pgsize.width, pgsize.height));                 slide[i].draw(graphics);                 graphics.getpaint();                 slideimage = image.getinstance(img, null);                 table.addcell(new pdfpcell(slideimage, true));            }       }            pdfdocument.add(table);           pdfdocument.close();           pdfwriter.close();           system.out.println("powerpoint file converted pdf successfully");     }  } 

exception because actual conversion not happening , document empty.

when extension using following command return without "." i.e(ppt or pptx)

string filetype=filenameutils.getextension(destination); 

so need change if conditions follows

filetype.equalsignorecase("ppt")  filetype.equalsignorecase("pptx") 

Comments

Popular posts from this blog

mysql - Dreamhost PyCharm Django Python 3 Launching a Site -

java - Sending SMS with SMSLib and Web Services -

java - How to resolve The method toString() in the type Object is not applicable for the arguments (InputStream) -