This article shows you how to embed a zip file as an OLE object in a PowerPoint document using Spire.Presentation for Java.
import com.spire.presentation.*; import com.spire.presentation.drawing.IImageData; import javax.imageio.ImageIO; import java.awt.geom.Rectangle2D; import java.awt.image.BufferedImage; import java.io.File; import java.io.FileInputStream; public class InsertZip { public static void main(String[] args) throws Exception { //Create a Presentation object Presentation presentation = new Presentation(); presentation.getSlideSize().setType(SlideSizeType.SCREEN_16_X_9); //Get the first slide ISlide slide = presentation.getSlides().get(0); //Load a zip file and convert it to a byte[] object String filePath = "C:\\Users\\Administrator\\Desktop\\sample.zip"; File zipFile = new File(filePath); FileInputStream inputStream = new FileInputStream(zipFile); byte[] data = new byte[(int) zipFile.length()]; inputStream.read(data, 0, data.length); //Load an image file as the display icon File file = new File("C:\\Users\\Administrator\\Desktop\\winrar-icon.png"); BufferedImage image = ImageIO.read(file); IImageData oleImage = presentation.getImages().append(image); //Insert the zip file as an OLE object to the first slide Rectangle2D rect = new Rectangle2D.Float(60, 60, image.getWidth(), image.getHeight()); IOleObject oleObject = slide.getShapes().appendOleObject("zip", data, rect); oleObject.getSubstituteImagePictureFillFormat().getPicture().setEmbedImage(oleImage); oleObject.setProgId("Package"); //Save to file presentation.saveToFile("output/InsertZip.pptx", FileFormat.PPTX_2013); } }