Generera PPTX-miniatyrer i Java

Thumbnails är små versioner av de större bilderna som gör det lättare att titta på eller bläddra igenom listan med bilder. MS PowerPoint använder också miniatyrer för presentationerna för att gå igenom innehållet och navigera till en viss bild. I den här artikeln kommer du att lära dig hur du genererar miniatyrer av PowerPoint PPTX eller PPT med Java. Du kan använda den här funktionen i scenarier som när du skapar din webb- eller skrivbordsbaserade PowerPoint-visare.

Java API för att generera miniatyrer för PowerPoint PPTX/PPT

För att generera miniatyrer för PPTX- eller PPT-presentationer kommer vi att använda Aspose.Slides for Java. Det är ett funktionsrikt API för att skapa, manipulera och konvertera PowerPoint- och OpenOffice-presentationer. Du kan antingen ladda ner API:et eller installera det med hjälp av följande Maven-konfigurationer.

<repository>
    <id>AsposeJavaAPI</id>
    <name>Aspose Java API</name>
    <url>http://repository.aspose.com/repo/</url>
</repository>
<dependency>
    <groupId>com.aspose</groupId>
    <artifactId>aspose-slides</artifactId>
    <version>21.8</version>
    <classifier>jdk16</classifier>
</dependency>

Generera miniatyrbilder för PPTX eller PPT med Java

Följande är stegen för att generera miniatyrer av en PPTX-presentation med Java.

  1. Skapa först en instans av klassen Presentation för att ladda presentationen.
  2. Gå igenom varje ISlide i Presentation.getSlides()-samlingen.
  3. Skapa en bild av varje bild med metoden ISlide.getThumbnail(1f, 1f) och få referensen till bilden till ett BufferedImage-objekt.
  4. Skapa en ny File för utdatabilden.
  5. Spara slutligen bilden med metoden ImageIO.write(BufferedImage, String, File).

Följande kodexempel visar hur man genererar miniatyrer av en PPTX-presentation med Java.

// Ladda PowerPoint-presentation
Presentation presentation = new Presentation("presentation.pptx");

// Iterera genom bilderna i presentationen
for (ISlide sld : presentation.getSlides()) {
  
	// Skapa en fullskalig bild av bilden
	BufferedImage bi = sld.getThumbnail(1f, 1f);

	// Skapa en ny fil för att spara bilden
	File outputfile = new File("Slide_" + sld.getSlideNumber() + ".png");

	// Spara bild
	ImageIO.write(bi, "png", outputfile);
}

Skapa miniatyrer med användardefinierade mått

Du kan också ange dina egna mått för miniatyrbilderna med hjälp av höjden och bredden på bilderna. Följande är stegen för att utföra denna operation.

  1. Skapa först en instans av klassen Presentation för att ladda presentationen.
  2. Definiera måtten för den resulterande PNG-bilden.
  3. Gå igenom varje ISlide i Presentation.getSlides() samling.
  4. Skapa en bild av varje bild med hjälp av metoden ISlide.getThumbnail(float ScaleX, float ScaleY) och få referensen till bilden till ett BufferedImage-objekt.
  5. Skapa en ny File för utdatabilden.
  6. Spara slutligen bilden med metoden ImageIO.write(BufferedImage, String, File).

Följande kodexempel visar hur man genererar miniatyrbilder av en PPTX med anpassade mått.

// Ladda PowerPoint-presentation
Presentation presentation = new Presentation("presentation.pptx");

// Användardefinierad dimension
int desiredX = 1200;
int desiredY = 800;

// Få skalat värde för X och Y
float ScaleX = (float) (1.0 / presentation.getSlideSize().getSize().getWidth()) * desiredX;
float ScaleY = (float) (1.0 / presentation.getSlideSize().getSize().getHeight()) * desiredY;

// Iterera genom bilderna i presentationen
for (ISlide sld : presentation.getSlides()) {
  
	// Skapa en fullskalig bild av bilden
	BufferedImage bi = sld.getThumbnail(ScaleX, ScaleY);

	// Skapa en ny fil för att spara bilden
	File outputfile = new File("Slide_" + sld.getSlideNumber() + ".png");

	// Spara bild
	ImageIO.write(bi, "png", outputfile);
}

Skaffa en gratis API-licens

Du kan använda Aspose.Slides för Java utan utvärderingsbegränsningar genom att begära en tillfällig licens.

Slutsats

I den här artikeln har du lärt dig hur du genererar miniatyrbilder av PowerPoint PPTX eller PPT med Java. Dessutom har du sett hur man genererar miniatyrer med användardefinierade dimensioner. Dessutom kan du besöka dokumentationen för att utforska andra funktioner i API. Du kan också gärna meddela oss om dina frågor via vårt forum.

Se även