Organisasi yang berbeda menggunakan file PDF untuk pertukaran informasi yang aman dan teratur. Namun, terkadang file PDF menjadi besar karena konten yang disematkan seperti gambar, video, gambar, dll. Anda dapat dengan mudah mengoptimalkan atau mengompres ukuran file PDF tersebut tanpa mengurangi kualitasnya. Mari kita jelajahi skenario kompresi dan pengoptimalan ukuran PDF berikut yang dapat Anda masukkan ke dalam aplikasi Java Anda:

Pengoptimalan Ukuran PDF dan API Kompresi – Instalasi

Anda dapat menggunakan rutinitas Aspose.PDF for Java API yang efisien dan andal untuk mengoptimalkan atau mengompresi file PDF berukuran besar dengan tetap mempertahankan kualitas yang sama. Anda dapat mengunduh file JAR dari Unduhan atau dengan konfigurasi Maven di proyek Anda.

Optimalkan Dokumen PDF untuk Web menggunakan Java

Dokumen PDF dapat dioptimalkan saat Anda perlu menggunakannya di halaman web Anda. Pengoptimalan ini berguna untuk menampilkan halaman pertama dokumen PDF secepat mungkin. Anda dapat memiliki file PDF yang dioptimalkan dengan mengikuti langkah-langkah di bawah ini:

  1. File PDF sumber terbuka
  2. Panggil metode optimalkan untuk Pengoptimalan PDF
  3. Simpan file PDF keluaran

Cuplikan kode di bawah ini adalah contoh cara mengoptimalkan dokumen PDF untuk web di lingkungan Java Anda:

// Buka dokumen
Document pdfDocument = new Document("Original.pdf");

// Optimalkan untuk web
pdfDocument.optimize();

// Simpan dokumen keluaran
pdfDocument.save("Optimized_output.pdf");

Kompres atau Optimalkan Ukuran PDF yang berisi Gambar menggunakan Java

Di sini kita terutama akan membahas skenario di mana file PDF berisi banyak gambar sehingga ukurannya sangat besar. Misalnya, file PDF yang berisi gambar untuk model pesawat yang berbeda dan informasi tentang setiap bagian, minor atau mayor, disertakan sebagai gambar atau gambar semua komponen. Selain itu, banyak dokumen profesional dapat berisi gambar sebagai artefak utama dari file tersebut. Dalam skenario seperti itu, kami dapat mengompres file PDF dengan pendekatan berikut:

Mengecilkan, Mengompresi, dan Mengubah Ukuran Semua Gambar menggunakan Java

Anda dapat meminimalkan ukuran file PDF yang berisi banyak gambar dengan mengecilkan, mengompresi, dan mengubah ukuran gambar. Peningkatan ukuran dapat terlihat karena sebagian besar ukuran file ditutupi oleh gambar yang sekarang ingin kita perkecil. Anda harus mengikuti langkah-langkah di bawah ini untuk mengecilkan, mengompres, dan mengubah ukuran gambar atau gambar dalam file PDF:

  1. Muat file PDF masukan
  2. Inisialisasi objek OptimizationOptions.
  3. Tetapkan Kualitas dan Resolusi Gambar
  4. Panggil metode optimizeResources.
  5. Simpan dokumen PDF keluaran

Cuplikan kode di bawah ini menunjukkan cara mengecilkan atau mengompres gambar untuk memperkecil dan meminimalkan ukuran file PDF menggunakan Java:

// Muat dokumen masukan
Document doc = new Document(dataDir + "Test.pdf");

// Menginisialisasi objek OptimizationOptions
OptimizationOptions opt = new OptimizationOptions();

// Aktifkan kompresi gambar
// Atur kualitas dan resolusi gambar dalam file PDF
opt.getImageCompressionOptions().setCompressImages(true);
opt.getImageCompressionOptions().setImageQuality(10);
opt.getImageCompressionOptions().setMaxResolution(150);
opt.getImageCompressionOptions().setResizeImages(true);
doc.optimizeResources(opt);

// Simpan file yang diperbarui
doc.save(dataDir + "compressingPDFWithImages_out.pdf");

Menghapus Embedded Font, Stream yang Tidak Digunakan dan Menautkan Stream Duplikat menggunakan Java

Saat Anda perlu mengurangi ukuran file PDF, maka setiap byte penting. Font tertanam dapat membantu mengurangi ukuran file dengan pendekatan yang berbeda. Misalnya, Anda dapat menghapus semua font atau Anda hanya dapat menyimpan sebagian dari karakter font yang digunakan dalam file PDF. Ini akan menjadi sebagian font yang tidak disematkan yang masih akan membantu meminimalkan ukuran file. Selain itu, Anda dapat menghapus aliran yang tidak digunakan atau menautkan aliran duplikat untuk menghemat ruang lebih lanjut. Pengoptimalan PDF ini akan sangat mengurangi ukuran file. Anda perlu mengikuti langkah-langkah berikut untuk mengoptimalkan dan mengurangi ukuran file PDF:

  1. Muat dokumen PDF masukan
  2. Inisialisasi objek kelas OptimizationOptions.
  3. Hapus sematan semua font atau subkumpulan font
  4. Tautkan aliran duplikat
  5. Hapus aliran yang tidak digunakan

Kode berikut menguraikan cara mengompres file PDF untuk mengoptimalkan, mengurangi, dan meminimalkan ukuran dokumen PDF:

Document doc = new Document(dataDir + "Test.pdf");
OptimizationOptions opt = new OptimizationOptions();

// Salah satu
// Batalkan penyematan semua font dalam PDF
opt.setUnembedFonts(true);

//ATAU
// hanya simpan font yang disematkan untuk karakter yang digunakan
opt.setSubsetFonts(true);

// link aliran duplikat
opt.setLinkDuplcateStreams(false);

// Hapus aliran yang tidak digunakan
opt.setRemoveUnusedStreams(false);

// Hapus objek yang tidak digunakan
opt.setRemoveUnusedObjects(false);

doc.optimizeResources(opt);

// Simpan file yang diperbarui
doc.save(dataDir + "compressingPDF.pdf");

Sejauh ini kami telah membahas pendekatan pengoptimalan terutama untuk file PDF dengan gambar. Sekarang mari kita lanjutkan dengan beberapa cara lagi untuk pengoptimalan PDF.

Kompres atau Kurangi Ukuran Dokumen PDF menggunakan Java

File PDF sering kali berisi anotasi, bidang formulir yang dapat diedit, dan artefak warna yang secara kolektif menghabiskan ruang. Mari kita jelajahi prosedur berikut untuk mengompres ukuran file PDF.

Menghapus atau Meratakan Anotasi untuk Mengurangi Ukuran dengan Java

File PDF dapat berisi banyak anotasi. Misalnya, tanda air, komentar, bentuk, dll. Anda dapat menghapus anotasi jika tidak diperlukan lagi atau menggemukkan anotasi jika tidak diperlukan perubahan lebih lanjut. Ikuti langkah-langkah di bawah ini untuk menghapus atau meratakan anotasi guna mengoptimalkan ukuran file PDF:

  1. Dokumen PDF sumber terbuka
  2. Ulangi setiap halaman
  3. Ratakan atau hapus anotasi
  4. Simpan dokumen PDF keluaran

Cuplikan kode di bawah ini adalah contoh cara menghilangkan atau meratakan anotasi pada dokumen PDF menggunakan Java:

// Buka dokumen
Document pdfDocument = new Document(dataDir + "OptimizeDocument.pdf");

// Ulangi setiap halaman dan anotasi
for (Page page : pdfDocument.getPages())
{
   for (Annotation annotation : page.getAnnotations())
    {
        // Entah meratakan anotasi
        annotation.flatten();
        
        // ATAU hapus anotasi
        // page.getAnnotations().delete(anotasi);        
    }
}
// Simpan dokumen PDF yang dioptimalkan
pdfDocument.save(dataDir + "OptimizeDocument_out.pdf");

Menghapus Kolom Formulir untuk Meminimalkan Ukuran File PDF dengan Java

Formulir PDF yang dapat diisi adalah umum di mana Anda memerlukan pengiriman data dalam skala besar. Setelah pengiriman data, bidang formulir yang dapat diisi dapat dihapus untuk mengoptimalkan dan meminimalkan ukuran file PDF. Anda harus mengikuti langkah-langkah di bawah ini untuk menghapus kolom formulir:

  1. Muat dokumen PDF masukan
  2. Periksa bidang formulir dalam dokumen PDF
  3. Ulangi setiap bidang dan ratakan
  4. Simpan file PDF terkompresi yang diperbarui
// Muat formulir PDF sumber
Document doc = new Document(dataDir + "input.pdf");

// Meratakan bidang Formulir
if (doc.getForm().getFields().length > 0)
{
   for (Field item : doc.getForm().getFields())
    {
        item.flatten();
    }
}

dataDir = dataDir + "FlattenForms_out.pdf";
// Simpan dokumen yang diperbarui
doc.save(dataDir);

Ubah Ruang Warna RGB menjadi Skala Abu-abu untuk Kompresi dan Pengoptimalan PDF menggunakan Java

Sebagian besar file PDF berisi konten tekstual yang juga dapat direpresentasikan dengan baik dalam ruang warna Grayscale. Selain itu, ketika tujuan dan prioritasnya adalah untuk menyimpan setiap byte maka gambar pun dapat diubah menjadi Skala Abu-abu karena fokusnya adalah pengarsipan data. Anda dapat mengikuti langkah-langkah di bawah ini untuk mengompresi dan mengoptimalkan ukuran file PDF dengan mengonversi ruang warna RGB ke Grayscale:

  1. Akses dokumen PDF sumber
  2. Inisialisasi RgbToDeviceGrayConversionStrategy instance
  3. Ubah ruang warna dari setiap warna menjadi Skala Abu-abu
  4. Simpan file PDF keluaran yang dioptimalkan

Cuplikan kode berikut menunjukkan cara mengompresi dan mengoptimalkan ukuran PDF dengan mengubah ruang warna di lingkungan Java:

// Muat dokumen PDF masukan
Document document = new Document("input.pdf");

// Menginisialisasi instance RgbToDeviceGrayConversionStrategy
RgbToDeviceGrayConversionStrategy strategy = new RgbToDeviceGrayConversionStrategy();
for (int idxPage = 1; idxPage <= document.getPages().size(); idxPage++) {
	Page page = document.getPages().get_Item(idxPage);
        
        // Ubah ruang warna setiap halaman menjadi Skala abu-abu
	strategy.convert(page);
}
// Simpan dokumen PDF keluaran
document.save("output.pdf");

Kesimpulan

Pada artikel ini, kami telah membahas berbagai cara dan pendekatan untuk mengoptimalkan dan mengompres file PDF untuk memperkecil ukurannya. Pertama-tama, kami telah mengoptimalkan ukuran file PDF untuk web menggunakan Java. Kemudian kita telah belajar mengecilkan, mengompresi, dan mengubah ukuran gambar dalam file PDF yang berisi beberapa gambar. Selain itu, kami juga telah mengeksplorasi bekerja dengan font, aliran, anotasi, bidang formulir, serta mengubah ruang warna dokumen PDF menjadi skala abu-abu sehingga file PDF dengan ukuran lebih kecil tetapi dengan kualitas yang sama dapat dibuat menggunakan Java. Selanjutnya, jika ada pertanyaan terkait topik ini, Anda dapat menghubungi kami melalui Forum Dukungan Gratis.

Lihat juga

Info: Menggunakan aplikasi web online baru dari Aspose, Anda dapat mengubah sekumpulan gambar menjadi video. Anda mungkin juga ingin melihat layanan lain, yang mengekstrak suara dari video.