API público y cambios incompatibles hacia atrás en Aspose.Slides para Java 14.9.0

Cambios en la API pública

Métodos añadidos para reemplazar imagen en PPImage, IPPImage

Se han añadido nuevos métodos:

  • IPPImage.replaceImage(byte[] newImageData)
  • IPPImage.replaceImage(IPPImage newImage)

 Presentation presentation = new Presentation("presentation.pptx");

//La primera forma

byte[] imageData = // ...

presentation.getImages().get_Item(0).replaceImage(imageData);

//La segunda forma

presentation.getImages().get_Item(1).replaceImage(

    presentation.getImages().get_Item(0));

presentation.save("presentation_out.pptx", SaveFormat.Pptx);

Métodos añadidos para guardar diapositivas manteniendo números de página

Se han añadido los siguientes métodos:

  • void IPresentation.save(string fname, int[] slides, SaveFormat format);
  • void IPresentation.save(string fname, int[] slides, SaveFormat format, ISaveOption options);
  • void IPresentation.save(Stream stream, int[] slides, SaveFormat format);
  • void IPresentation.save(Stream stream, int[] slides, SaveFormat format, ISaveOption options);

Estos métodos permiten guardar las diapositivas de la presentación especificada en formatos PDF, XPS, TIFF, HTML. El array ‘slides’ permite especificar números de página, comenzando desde 1.


 save(string fname, int\[\] slides, SaveFormat format);


 Presentation presentation = new Presentation(presentationFileName);

int[] slides = new int[] { 2, 3, 5 }; //Array de posiciones de diapositivas

presentation.save(outFileName, slides, SaveFormat.Pdf);

Valor de enumeración SmartArtLayoutType.Custom añadido

Este tipo de diseño de SmartArt representa un diagrama con plantilla personalizada. Los diagramas personalizados solo pueden ser cargados desde un archivo de presentación y no pueden ser creados a través del método ShapeCollection.addSmartArt(x, y, width, height, SmartArtLayoutType.Custom)

Clase SmartArtShape e interfaz ISmartArtShape añadidas

La clase Aspose.Slides.SmartArt.SmartArtShape (y su interfaz Aspose.Slides.SmartArt.ISmartArtShape) agrega acceso a formas individuales dentro del diagrama de SmartArt. SmartArtShape se puede usar para cambiar FillFormat, LineFormat, agregar hipervínculos, etc.

Ejemplo de uso:


 Presentation pres = new Presentation();

ISmartArt smart = pres.getSlides().get_Item(0).getShapes().addSmartArt(10, 10, 400, 300, SmartArtLayoutType.BasicBlockList);

ISmartArtNode node = smart.getAllNodes().get_Item(0);

for (ISmartArtShape shape : node.getShapes())

{

    shape.getFillFormat().setFillType(FillType.Solid);

    shape.getFillFormat().getSolidFillColor().setColor(Color.RED);

}

pres.save("out.pptx", SaveFormat.Pptx);

Clase SmartArtShapeCollection, interfaz ISmartArtShapeCollection y método ISmartArtNode.getShapes() han sido añadidos

La clase Aspose.Slides.SmartArt.SmartArtShapeCollection (y su interfaz Aspose.Slides.SmartArt.ISmartArtShapeCollection) agrega acceso a formas individuales dentro del diagrama de SmartArt. La colección contiene formas asociadas con SmartArtNode. La propiedad SmartArtNode.Shapes devuelve colecciones de todas las formas asociadas con el nodo.




 Presentation pres = new Presentation();

ISmartArt smart = pres.getSlides().get_Item(0).getShapes().addSmartArt(10, 10, 400, 300, SmartArtLayoutType.BasicBlockList);

ISmartArtNode node = smart.getAllNodes().get_Item(0);

for (ISmartArtShape shape : node.getShapes())

{

    shape.getFillFormat().setFillType(FillType.Solid);

    shape.getFillFormat().getSolidFillColor().setColor(Color.RED);

}

pres.save("out.pptx", SaveFormat.Pptx);