Hoe GIF naar PDF in Java te converteren

Hoe GIF naar PDF in Java te converteren

Het bestandsformaat [PDF][1] is een van de meest populaire op vectoren gebaseerde bestanden. Aan de andere kant is [GIF][2] gebaseerd op rasterafbeeldingen en biedt het veel als het gaat om het weergeven van afbeeldingen als animatie. In deze blogpost leer je hoe je GIF naar PDF converteert in een Java-toepassing. Daarom installeert u deze documentverwerking [bibliotheek][3] om programmatisch een GIF naar PDF-converter te bouwen. Door het proces van conversie van GIF naar PDF te automatiseren, krijgt uw bedrijfstoepassing zeker een voorsprong op de concurrentie. Je doorloopt de volgende punten:

  • [Conversie van GIF naar PDF - API-installatie][4]
  • [GIF naar PDF converteren in Java][5]

Conversie van GIF naar PDF - API-installatie

Deze bibliotheek voor documentverwerking is heel eenvoudig te installeren in uw Java-project. U kunt het JAR-bestand echter [downloaden][6] of deze bibliotheek installeren met behulp van de volgende Maven-configuraties.

<repository>
   <id>AsposeJavaAPI</id>
   <name>Aspose Java API</name>
   <url>https://releases.aspose.com/java/repo/</url>
 </repository> 
<dependency>
  <groupId>com.aspose</groupId>
  <artifactId>aspose-words</artifactId>
  <version>22.10</version>
  <classifier>jdk17</classifier>
</dependency>

Hoe GIF naar PDF in Java te converteren

Zodra de bibliotheek is geïnstalleerd, kunt u beginnen met het schrijven van de broncode om programmatisch een GIF naar PDF-converter te bouwen. U kunt de stappen en het onderstaande codefragment volgen:

  1. Maak een instantie van de klasse [Document][7].
  2. Initialiseert een object van de klasse [DocumentBuilder][8] en bindt het Document-object.
  3. Laad nu het GIF-bronbestand en maak een afbeeldingsstream door de methode [createImageInputStream][9] aan te roepen die invoer ontvangt van het object [File][10].
  4. Maak een object van de klasse [ImageReader][11], open de methode [getImageReaders][12] die een iterator retourneert die alle momenteel geregistreerde ImageReaders bevat die beweren het geleverde object te kunnen decoderen, meestal een ImageInputStream.
  5. Roep de methode [setInput][13] aan die de te gebruiken invoerbron voor het gegeven ImageInputStream of ander object instelt.
  6. Haal het aantal frames in de afbeelding op door de methode [getNumImages][14] aan te roepen.
  7. Doorloop alle frames.
  8. Voeg een sectie-einde in voor elke nieuwe pagina, in het geval van een afbeelding met meerdere frames, door de methode [insertBreak][15] aan te roepen.
  9. Selecteer het actieve frame door de methode [lezen][16] aan te roepen.
  10. Haal de huidige pagina-instellingen op door de methode [getPageSetup][17] aan te roepen en toe te wijzen aan het klassenobject [PageSetup][18].
  11. Roep de methode [setPageWidth][19] aan om de paginabreedte in te stellen.
  12. De methode [setPageHeight][20] slaat de paginahoogte op.
  13. Roep de methode [insertImage][21] aan om de afbeelding in het document in te voegen en in de linkerbovenhoek van de pagina te plaatsen.
  14. Sla het bestand op in PDF-bestandsindeling door de methode [opslaan][22] aan te roepen. Kopieer en plak de volgende code in uw hoofdbestand:
    // Instantiate an instance of the Document class.
    Document doc = new Document();
    // Initializes an object of the DocumentBuilder class and bind the Document object.
    DocumentBuilder builder = new DocumentBuilder(doc);
    // Now, load the source GIF file and create an image stream by calling the createImageInputStream method that takes input from the File Object.
    ImageInputStream iis = ImageIO.createImageInputStream(new File("sample.gif"));
    // Create an object of the ImageReader class, Access the method getImageReaders that returns an Iterator containing all currently registered ImageReaders that claim to be able to decode the supplied Object, typically an ImageInputStream.
    ImageReader reader = ImageIO.getImageReaders(iis).next();
    // Invoke the setInput method that sets the input source to use to the given ImageInputStream or other Object.
    reader.setInput(iis, false);
    // Get the number of frames in the image by calling the getNumImages method.
    int framesCount = reader.getNumImages(true);
    // Loop through all frames.
    for (int frameIdx = 0; frameIdx < framesCount; frameIdx++) {
    // Insert a section break before each new page, in case of a multi-frame image by calling the insertBreak method.
    if (frameIdx != 0)
    builder.insertBreak(BreakType.SECTION_BREAK_NEW_PAGE);
    // Select active frame by calling the read method.
    BufferedImage image = reader.read(frameIdx);
    // Get the current page setup by calling the getPageSetup method and assigning it to the PageSetup class object.
    PageSetup ps = builder.getPageSetup();
    // Invoke the setPageWidth method to set the page width.
    ps.setPageWidth(ConvertUtil.pixelToPoint(image.getWidth()));
    // setPageHeight method will save the page height.
    ps.setPageHeight(ConvertUtil.pixelToPoint(image.getHeight()));
    // Call the insertImage method to insert the image into the document and position it at the top left corner of the page.
    builder.insertImage(
    image,
    RelativeHorizontalPosition.PAGE,
    0,
    RelativeVerticalPosition.PAGE,
    0,
    ps.getPageWidth(),
    ps.getPageHeight(),
    WrapType.NONE);
    }
    if (iis != null) {
    iis.close();
    reader.dispose();
    }
    // Save the file as PDF file format by invoking the save method.
    doc.save("gifToPdf.pdf");
    De uitvoer is te zien in de onderstaande afbeelding:
    GIF naar PDF-converter

Ontvang een gratis licentie

U kunt gebruikmaken van een [gratis tijdelijke licentie][23] om de API zonder evaluatiebeperkingen uit te proberen.

Opsommen

We beëindigen deze blogpost hier. je hebt doorgenomen hoe je GIF naar PDF converteert in Java met behulp van een paar regels broncode. Bovendien kunt u deze documentverwerkingsbibliotheek installeren om programmatisch een GIF naar PDF-converter te bouwen. Bovendien kunt u de [documentatie][24] bezoeken voor andere interessante functies. Bovendien raden we u aan onze [Aan de slag-gids][25] te volgen. Ten slotte schrijft [conholdate.com][26] nieuwe blogposts. Blijf dus in contact voor regelmatige updates.

Een vraag stellen

U kunt uw vragen of opmerkingen aan ons doorgeven op ons [forum][27].

Veelgestelde vragen

Hoe converteer ik een GIF naar PDF? U kunt GIF naar PDF-conversie programmatisch uitvoeren met behulp van deze Java [bibliotheek][3]. Ga verder naar deze [link][5] voor het copie-fragment.

Zie ook