Apache POI HSLF
Java-bibliotek til Microsoft® PPT-præsentationsfilformater
Tilføj slides og billeder til præsentationer, konverter PPT-filer med open source gratis Java API.
Hvad er Apache POI HSLF?
Apache POI HSLF er ren Java-implementering til læsning, oprettelse, ændring eller gengivelse af PowerPoint-præsentationer. Det giver en måde at læse, oprette eller ændre PowerPoint-præsentationer PPT-filformat. Det giver støtte til at udtrække data såsom tekst, billeder, lyde, indlejrede objekter og meget mere fra PowerPoint-præsentationer.
Det understøtter også at tegne en form på et dias, tilføje hyperlinks, tabeller, billeder, tilpasse sidehoveder og sidefødder, oprette punktlister, hente indlejrede lyde og meget mere.
Kom godt i gang med Apache POI HSLF
Først og fremmest skal du have Java Development Kit (JDK) installeret på dit system. Hvis du allerede har det, så fortsæt til Apache POI's download-side for at få den seneste stabile udgivelse i et arkiv. Udpak indholdet af ZIP-filen i en hvilken som helst mappe, hvorfra de nødvendige biblioteker kan linkes til dit Java-program. Det er alt!
Det er endnu nemmere at henvise til Apache POI i dit Maven-baserede Java-projekt. Alt du behøver er at tilføje følgende afhængighed i din pom.xml og lade din IDE hente og referere til Apache POI Jar-filer.
Apache POI Maven afhængighed
<!-- https://mvnrepository.com/artifact/org.apache.poi/poi -->
<dependency>
<groupId>org.apache.poi</groupId>
<artifactId>poi-scratchpad</artifactId>
<version>4.1.0</version>
</dependency>
Opret dynamisk ny PPT eller modificer eksisterende præsentationer
Apache POI HSLF gør det muligt for programmører at skabe nye PowerPoint-præsentationer i PPT-filformater. Udviklere kan også transformere en eksisterende præsentation efter deres behov. API'et understøtter også funktioner til at udtrække data såsom tekst, billeder, lyde, indlejrede objekter og så videre fra PowerPoint-præsentationer.
Opret en PPT-fil - Java
// create a new PPT file
FileOutputStream fileOutputStream = new FileOutputStream(new File("Slide.ppt"));
// create a new slide show
HSLFSlideShow xmlSlideShow = new HSLFSlideShow();
// save file
xmlSlideShow.write(fileOutputStream);
Tilføj dias, billeder og tilpas sidehoved og sidefod til PPT
Udviklere kan nemt tilføje nye slides og ændre eksisterende i overensstemmelse med deres egne behov i en PPT-præsentation ved hjælp af Apache HSLF API. Udviklere kan nu tilføje tilpassede sidehoveder og sidefødder i deres præsentationer. Det giver også komplet support til at tilføje en titel til et dias, oprette et dias med et foruddefineret layout, arbejde med dias/formbaggrund og meget mere.
Indsæt billeder i PPT via Java
- Opret en ny PPT-fil ved at bruge FileOutputStream og send forekomst af new File() med outputfilnavn som streng
- Tilføj nyt diasshow ved hjælp af HSLFSlideShow()-metoden
- Tilføj nyt dias ved hjælp af createSlide() metoden
- Hent billedbytes ved hjælp af IOUtils.toByteArray()-metoden og send dit billede ind i det via FileInputStream()-metoden
- Tilføj billede til dit dias ved hjælp af metoden hslfSlideShow.addPicture(picture, HSLFPictureData.PictureType.PNG). Metoden accepterer billedbytes og billedtype som argumenter
- Skriv og gem fil
Tilføj billede i PPT - Java
// create a new PPT file
FileOutputStream fileOutputStream = new FileOutputStream(new File("AddImage.ppt"));
// create a new slide show
HSLFSlideShow hslfSlideShow = new HSLFSlideShow();
// create slide
HSLFSlide slide = hslfSlideShow.createSlide();
// load image
byte[] picture = IOUtils.toByteArray(new FileInputStream(new File("apache-poi-logo-min.png")));
// add image
HSLFPictureData hslfPictureData = hslfSlideShow.addPicture(picture, HSLFPictureData.PictureType.PNG);
HSLFPictureShape pictureShape = slide.createPicture(hslfPictureData);
// save file
hslfSlideShow.write(fileOutputStream);
// close stream
fileOutputStream.close();
Konverter dias til billedformater ved hjælp af Java API
Apache POI HSLF API gør det muligt for softwareudviklere at konvertere hvert dias af en PowerPoint-præsentation til et billedfilformat i deres Java-applikationer. Du kan fange dias i java.awt.Graphics2D-objekter (eller et hvilket som helst andet) og serialisere det til et PNG- eller JPEG-format. De understøttede billeder kan være i JPEG, PNG, DIB og så videre.
Konverter PPT til billede - Java
//open an existing PPT file
HSLFSlideShow hslfSlideShow = new HSLFSlideShow(new FileInputStream(new File("PPTtoImage.ppt")));
// get dimensions
Dimension pgsize = hslfSlideShow.getPageSize();
java.util.List slide = hslfSlideShow.getSlides();
for (int i = 0; i < slide.size(); i++) {
BufferedImage img = new BufferedImage(pgsize.width, pgsize.height,BufferedImage.TYPE_INT_RGB);
Graphics2D graphics = img.createGraphics();
// clear the drawing area
graphics.setPaint(Color.white);
graphics.fill(new Rectangle2D.Float(0, 0, pgsize.width, pgsize.height));
// render
slide.get(i).draw(graphics);
// create image
FileOutputStream out = new FileOutputStream("PPTtoImage.png");
javax.imageio.ImageIO.write(img, "png", out);
out.close();
}