Apache POI HSLF
Java Library for Microsoft® PPT-presentasjonsfilformater
Legg til lysbilder og bilder til presentasjoner, konverter PPT-filer med gratis Java API med åpen kildekode.
Hva er Apache POI HSLF?
Apache POI HSLF er ren Java-implementering for å lese, lage, endre eller gjengi PowerPoint-presentasjoner. Det gir en måte å lese, lage eller endre PowerPoint-presentasjoner PPT-filformat. Den gir støtte for å trekke ut data som tekst, bilder, lyder, innebygde objekter og mye mer fra PowerPoint-presentasjoner.
Den støtter også å tegne en form på et lysbilde, legge til hyperkoblinger, tabeller, bilder, tilpasse topp- og bunntekster, lage punktlister, hente innebygde lyder og mye mer.
Komme i gang med Apache POI HSLF
Først av alt må du ha Java Development Kit (JDK) installert på systemet ditt. Hvis du allerede har det, fortsett til Apache POIs nedlastingsside for å få den siste stabile utgivelsen i et arkiv. Pakk ut innholdet i ZIP-filen i en hvilken som helst katalog der de nødvendige bibliotekene kan kobles til Java-programmet. Det er alt!
Å referere til Apache POI i ditt Maven-baserte Java-prosjekt er enda enklere. Alt du trenger er å legge til følgende avhengighet i pom.xml og la IDE-en hente og referere til Apache POI Jar-filene.
Apache POI Maven Dependency
<!-- https://mvnrepository.com/artifact/org.apache.poi/poi -->
<dependency>
<groupId>org.apache.poi</groupId>
<artifactId>poi-scratchpad</artifactId>
<version>4.1.0</version>
</dependency>
Opprett ny PPT dynamisk eller endre eksisterende presentasjoner
Apache POI HSLF gjør det mulig for programmerere å lage nye PowerPoint-presentasjoner i PPT-filformater. Utviklere kan også transformere en eksisterende presentasjon i henhold til deres behov. API-en støtter også funksjoner for å trekke ut data som tekst, bilder, lyder, innebygde objekter og så videre fra PowerPoint-presentasjoner.
Lag 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);
Legg til lysbilder, bilder og tilpass topptekst og bunntekst til PPT
Utviklere kan enkelt legge til nye lysbilder og endre eksisterende i henhold til deres egne behov i en PPT-presentasjon ved hjelp av Apache HSLF API. Utviklere kan nå legge til tilpassede topptekster og bunntekster i presentasjonene sine. Den gir også full støtte for å legge til en tittel for et lysbilde, lage et lysbilde med en forhåndsdefinert layout, arbeide med lysbilde/formbakgrunn og mye mer.
Sett inn bilder i PPT via Java
- Opprett en ny PPT-fil ved å bruke FileOutputStream og send forekomst av new File() med utdatafilnavn som streng
- Legg til ny lysbildefremvisning ved å bruke HSLFSlideShow()-metoden
- Legg til nytt lysbilde ved å bruke createSlide()-metoden
- Få bildebytes ved å bruke IOUtils.toByteArray()-metoden og send bildet ditt i det via FileInputStream()-metoden
- Legg til bilde til lysbildet ditt ved hjelp av metoden hslfSlideShow.addPicture(picture, HSLFPictureData.PictureType.PNG). Metoden godtar bildebyte og bildetype som argumenter
- Skriv og lagre fil
Legg til bilde 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 lysbilder til bildeformater ved hjelp av Java API
Apache POI HSLF API gjør det mulig for programvareutviklere å konvertere hvert lysbilde av en PowerPoint-presentasjon til et bildefilformat i Java-applikasjonene sine. Du kan fange lysbilder inn i java.awt.Graphics2D-objekter (eller et hvilket som helst annet) og serialisere det til et PNG- eller JPEG-format. De støttede bildene kan være i JPEG, PNG, DIB og så videre.
Konverter PPT til bilde - 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();
}