Cara Mengonversi GIF ke PDF di Java

Cara Mengonversi GIF ke PDF di Jawa

Format file PDF adalah salah satu file berbasis vektor yang paling populer. Di sisi lain, GIF didasarkan pada gambar raster dan menawarkan banyak hal untuk menampilkan gambar sebagai animasi. Dalam posting blog ini, Anda akan belajar cara mengonversi GIF ke PDF di aplikasi Java. Oleh karena itu, Anda akan menginstal [perpustakaan] pemrosesan dokumen ini 3 untuk membuat pengonversi GIF ke PDF secara terprogram. Mengotomatiskan proses konversi GIF ke PDF pasti akan memberikan keunggulan kompetitif pada aplikasi bisnis Anda. Anda akan melalui poin-poin berikut:

Konversi GIF ke PDF - instalasi API

Pustaka pemrosesan dokumen ini sangat mudah dipasang di proyek Java Anda. Namun, Anda dapat mengunduh file JAR atau menginstal pustaka ini menggunakan konfigurasi Maven berikut.

<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>

Cara Mengonversi GIF ke PDF di Jawa

Setelah perpustakaan diinstal, Anda dapat mulai menulis kode sumber untuk membuat konverter GIF ke PDF secara terprogram. Anda dapat mengikuti langkah-langkah dan potongan kode yang diberikan di bawah ini:

  1. Membuat instance dari kelas Document.
  2. Menginisialisasi objek dari kelas DocumentBuilder dan mengikat objek Dokumen.
  3. Sekarang, muat file sumber GIF dan buat aliran gambar dengan memanggil metode createImageInputStream yang mengambil input dari Objek File.
  4. Buat objek dari kelas ImageReader, akses metode getImageReaders yang mengembalikan Iterator yang berisi semua ImageReaders terdaftar saat ini yang mengklaim dapat mendekode Objek yang disediakan, biasanya ImageInputStream.
  5. Panggil metode setInput yang menyetel sumber input untuk digunakan ke ImageInputStream atau objek lain yang diberikan.
  6. Dapatkan jumlah bingkai pada gambar dengan memanggil metode getNumImages.
  7. Ulangi semua bingkai.
  8. Sisipkan pemisah bagian sebelum setiap halaman baru, dalam kasus gambar multi-bingkai dengan memanggil metode insertBreak.
  9. Pilih frame aktif dengan memanggil metode read.
  10. Dapatkan penyiapan halaman saat ini dengan memanggil metode getPageSetup dan menugaskannya ke objek kelas PageSetup.
  11. Panggil metode setPageWidth untuk menyetel lebar halaman.
  12. Metode setPageHeight akan menyimpan tinggi halaman.
  13. Panggil metode insertImage untuk memasukkan gambar ke dalam dokumen dan posisikan di sudut kiri atas halaman.
  14. Simpan file dalam format file PDF dengan menggunakan metode save. Salin & tempel kode berikut ke file utama Anda:
    // 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");
    Outputnya dapat dilihat pada gambar di bawah ini:
    Konverter GIF ke PDF

Dapatkan Lisensi Gratis

Anda dapat memanfaatkan lisensi sementara gratis untuk mencoba API tanpa batasan evaluasi.

Menyimpulkan

Kami mengakhiri posting blog ini di sini. Anda telah mempelajari cara mengonversi GIF ke PDF di Java menggunakan beberapa baris kode sumber. Selain itu, Anda dapat menginstal pustaka pemrosesan dokumen ini untuk membuat konverter GIF ke PDF secara terprogram. Selain itu, Anda dapat mengunjungi dokumentasi untuk mengetahui fitur menarik lainnya. Selain itu, kami menyarankan Anda untuk mengikuti [panduan Memulai] kami25. Terakhir, conholdate.com sedang menulis posting blog baru. Jadi, harap tetap berhubungan untuk pembaruan rutin.

Berikan pertanyaan

Anda dapat memberi tahu kami tentang pertanyaan atau pertanyaan Anda di forum kami.

FAQ

Bagaimana cara mengonversi GIF ke PDF? Anda dapat melakukan konversi GIF ke PDF secara terprogram menggunakan library Java ini. Selanjutnya, silakan kunjungi link ini untuk mendapatkan cuplikan coping.

Lihat juga