Browse our Products

Aspose.Slides for Java 16.6.0 Release Notes

KeySummaryCategory
SLIDESJAVA-34923Huge memory consumption for loading the presentation using Aspose.Slides for Java 15.5.0Investigation
SLIDESNET-32388Inserting video from web in presentationFeature
SLIDESNET-37410Implement FillOverlay effectFeature
SLIDESJAVA-34301Converting XML to PPTBug
SLIDESJAVA-35531NoClassDefFoundError exception for specific case when calling Presentation.getPresentationText in 1.6 jdkBug
SLIDESJAVA-35530ExceptionInInitializerError exception on Presentation.getPresentationText call using 1.6 jdkBug
SLIDESJAVA-35523Images are missing in generated thumbnailsBug
SLIDESJAVA-35518Value cannot be null on saving PPTX presentationBug
SLIDESJAVA-35509Value does not fall in range exception on loading presentationBug
SLIDESJAVA-35506Can’t read MSCDFileSystem exception on loading presentationBug
SLIDESJAVA-35505Argument out of range exception on loading presentationBug
SLIDESJAVA-35489KeyNotFoundException when converting PPT to PDFBug
SLIDESJAVA-35470Aspose.Slides 16.4.0 Exception when trying to get thumbnails from presentation fileBug
SLIDESJAVA-35469PPTXReadException on PPT loadBug
SLIDESJAVA-35468PictureFillFormatEffectiveData.copyDataFrom throws NullPointerExceptionBug
SLIDESJAVA-35464Exception when rendering of hidden slides in TiffBug
SLIDESJAVA-35463Effect getting changed in the design when saving presentationBug
SLIDESJAVA-35462ArgumentOutOfRangeException on presentation loadBug
SLIDESJAVA-35461documentProperties.setHyperlinkBase cannot work for PPTBug
SLIDESJAVA-35445createPortionFormatEffective() throws NullPointerExceptionBug
SLIDESJAVA-35440java.lang.ArrayIndexOutOfBoundsException on accessing presentationBug
SLIDESJAVA-35437Animation getting changed on saving presentationBug
SLIDESJAVA-35435PPTXReadException on loading presentationBug
SLIDESJAVA-35431PPTReadException on presentation loadBug
SLIDESJAVA-35421Shapes improperly rendered in generated thumbnailsBug
SLIDESJAVA-35411PPTXReadException on presentation loadBug
SLIDESJAVA-35405ArrayIndexOutOfBoundsException on PPT saveBug
SLIDESJAVA-35399Problem while getting properties of a tableBug
SLIDESJAVA-35388Text missing in generated thumbnailBug
SLIDESJAVA-35384Exception while getting table propertiesBug
SLIDESJAVA-35364Problem with space between bullets and textBug
SLIDESJAVA-35362Bigger SVG image generatedBug
SLIDESJAVA-35332Rendering Aspose.Slides to image is slower than Aspose.SlidesBug
SLIDESJAVA-35326The text is improperly rendered in generated thumbnailBug
SLIDESJAVA-35299NumberingBug
SLIDESJAVA-35270Adding CMYK image results in improper colors for the image in Picture FrameBug
SLIDESJAVA-35212Font height returned incorrectlyBug
SLIDESJAVA-35158Incorrect bullet points on load and save presentationBug
SLIDESJAVA-35005Date format is changed on PDF renderingBug
SLIDESJAVA-34821Contents of picture are missing when PPTX is converted to PDFBug
SLIDESJAVA-34820Shadow rendered incorrectly when PPTX converted to PDFBug
SLIDESJAVA-34724Bullets are improperly rendered on slide with Arabic textBug
SLIDESJAVA-34575Colors are not coming fine when converting PPTX to ImageBug
SLIDESJAVA-34561Improper slide background is rendered in generated PDFBug
SLIDESJAVA-34489The table broken after savingBug
SLIDESJAVA-34231Improve text rendering quality in PDFBug
SLIDESJAVA-34216Quality of pictures changed when converting PPT/PPTX to PDFBug
SLIDESJAVA-34171Text not showing properly after PPTX to JPG conversionBug
SLIDESJAVA-33940Presentation style is missing in generated PDFBug
SLIDESJAVA-33461Removing slide from PPT corrupts generated presentationBug

Public API Changes

New elements have been added into com.aspose.slides.LoadFormat enumeration

com.aspose.slides.LoadFormat enumeration has been extended with new elements: Potx, Pptm, Ppsm, Potm.

New methods readDocumentProperties, updateDocumentProperties and writeBindedPresentation have been added to IPresentationInfo, logic of the IDocumentProperties.setLastSavedTime() method has been changed

The two new methods readDocumentProperties and updateDocumentProperties have been added to IPresentationInfo interface. They provide a quick access to document properties and allow to change and update properties without loading a whole presentation.

The typical scenario load the properties, change some value and update the document can be implemented in the following way:

// read the info of presentation
IPresentationInfo info = PresentationFactory.getInstance().getPresentationInfo("presentation.pptx");

// obtain the current properties
IDocumentProperties props = info.readDocumentProperties();

// set the new values of Author and Title fields
props.setAuthor("New Author");
props.setTitle("New Title");

// update the presentation with a new values
info.updateDocumentProperties(props);
info.writeBindedPresentation("updated_presentation.pptx");

There’s an another way to use properties of a particular presentation as a template to update properties in other presentations:

private void updateByTemplate()
{
  DocumentProperties template;
  IPresentationInfo info = PresentationFactory.getInstance().getPresentationInfo("template.pptx");
  template = (DocumentProperties)info.readDocumentProperties();

  template.setAuthor("Template Author");
  template.setTitle("Template Title");
  template.setCategory("Template Category");
  template.setKeywords("Keyword1, Keyword2, Keyword3");
  template.setCompany("Our Company");
  template.setComments("Created from template");
  template.setContentType("Template Content");
  template.setSubject("Template Subject");

  updateByTemplate("doc1.pptx", template);
  updateByTemplate("doc2.odp", template);
  updateByTemplate("doc3.ppt", template);
}

private void updateByTemplate(String path, IDocumentProperties template)
{
  IPresentationInfo toUpdate = PresentationFactory.getInstance().getPresentationInfo(path);
  toUpdate.updateDocumentProperties(template);
  toUpdate.writeBindedPresentation(path);
}

Or a new template can be created from scratch and then used to update multiple presentations:

private void updateByTemplate()
{
  DocumentProperties template = new DocumentProperties();
  template.setAuthor("Template Author");
  template.setTitle("Template Title");
  template.setCategory("Template Category");
  template.setKeywords("Keyword1, Keyword2, Keyword3");
  template.setCompany("Our Company");
  template.setComments("Created from template");
  template.setContentType("Template Content");
  template.setSubject("Template Subject");

  updateByTemplate("doc1.pptx", template);
  updateByTemplate("doc2.odp", template);
  updateByTemplate("doc3.ppt", template);
}

private void updateByTemplate(String path, IDocumentProperties template)
{
  IPresentationInfo toUpdate = PresentationFactory.getInstance().getPresentationInfo(path);
  toUpdate.updateDocumentProperties(template);
  toUpdate.writeBindedPresentation(path);
}