Template banyak digunakan untuk menghasilkan dokumen yang dipersonalisasi dengan mengganti kunci template dengan nilai masing-masing. Artikel ini memandu tentang cara menemukan dan mengganti teks dan kata dalam dokumen PDF di Java. Kami akan membahas secara terpisah cara melakukan pencarian kata dan frasa, pencarian kata peka huruf besar-kecil, mengganti teks yang ditemukan menggunakan ekspresi reguler. Terakhir, kita akan belajar cara menyembunyikan bagian teks yang dicari menggunakan Java.

Topik-topik berikut akan dibahas di bawah ini:

Java Redaction API untuk Mengganti Teks

GroupDocs menyediakan Java API untuk menerapkan berbagai jenis redaksi. Ini memungkinkan untuk menyunting, menyembunyikan, atau menghapus konten & bahkan metadata dokumen, presentasi, spreadsheet, file PDF, dan gambar di dalam aplikasi. Untuk detail lebih lanjut tentang API, kunjungi dokumentasi.

Unduh atau Konfigurasi

Anda dapat mengunduh file JAR dari bagian unduhan, atau dapatkan repositori terbaru dan konfigurasi dependensi untuk pom.xml aplikasi Java berbasis maven Anda.

<repository>
	<id>GroupDocsJavaAPI</id>
	<name>GroupDocs Java API</name>
	<url>https://repository.groupdocs.com/repo/</url>
</repository>
<dependency>
        <groupId>com.groupdocs</groupId>
        <artifactId>groupdocs-redaction</artifactId>
        <version>21.12</version> 
</dependency>

Salah satu hal baiknya adalah tidak perlu menginstal editor PDF apa pun, atau perangkat lunak pihak ketiga lainnya untuk redaksi PDF. Berikut ini adalah isi dari dokumen PDF yang digunakan dalam contoh di bawah ini untuk redaksi. Pendekatan yang sama akan bekerja untuk format dokumen lain dengan hampir tidak ada perbedaan dalam kode sumber.

Temukan dan Ganti Kata atau Frasa dalam PDF di Java

Anda dapat menggunakan fitur ini untuk menyembunyikan data pribadi apa pun, dan juga untuk membuat dokumen kustom baru dari template apa pun. Langkah berikut menjelaskan cara menemukan kata/frasa apa pun dalam dokumen PDF dan menggantinya dengan teks lain dalam aplikasi Java.

  • Muat file PDF menggunakan kelas Redactor.
  • Temukan frasa atau kata yang tepat, menggunakan ExactPhraseRedaction dan [ReplacementOptions](https://apireference.groupdocs. com/redaction/java/com.groupdocs.redaction.redactions/ReplacementOptions).
  • Terapkan redaksi menggunakan metode apply() .
  • Simpan dokumen baru dengan perubahan menggunakan metode save().

Kode berikut menemukan dan mengganti kata-kata dalam file PDF menggunakan Java. Lebih tepatnya, ini menyembunyikan semua kemunculan “John Doe” dengan menggantinya dengan kata “[disensor]”.

// Temukan frasa yang tepat dalam PDF dan ganti dengan teks lain menggunakan Java
final Redactor redactor  = new Redactor("path/document.pdf");
redactor.apply(new ExactPhraseRedaction("John Doe", new ReplacementOptions("[censored]")));
// Simpan file yang telah disunting di lokasi berbeda dengan nama berbeda.
FileOutputStream stream = new FileOutputStream("path/exactPhrase.pdf");
RasterizationOptions rasterOptions = new RasterizationOptions();
rasterOptions.setEnabled(false);
redactor.save(stream, rasterOptions);

Output dari kode di atas adalah sebagai berikut.

Temukan dan Ganti Teks atau Frasa Peka Huruf Besar-kecil dalam PDF menggunakan Java

Anda dapat melakukan pencarian & redaksi peka huruf besar-kecil. Kode berikut menggantikan kemunculan kata “John Doe” yang peka huruf besar-kecil tetapi bukan “john doe” dalam dokumen PDF menggunakan Java.

// Temukan frasa yang tepat dalam PDF (peka huruf besar/kecil) dan ganti dengan teks lain menggunakan Java
final Redactor redactor  = new Redactor("path/document.pdf");
redactor.apply(new ExactPhraseRedaction("John Doe", true /*isCaseSensitive*/, new ReplacementOptions("[censored]")));
redactor.save();

Output dari kode adalah sebagai berikut.

Ganti Teks dalam PDF dengan Ekspresi Reguler (RegEx) di Java

Demikian pula, Anda dapat mengganti pola teks tertentu menggunakan ekspresi reguler. Langkah-langkah berikut memungkinkan Anda menyunting PDF setelah mencari menggunakan ekspresi reguler (RegEx) dalam aplikasi Java Anda.

  • Muat dokumen PDF menggunakan kelas Redactor.
  • Temukan kecocokan regex menggunakan kelas RegexRedaction dengan [ReplacementOptions](https://apireference.groupdocs.com/ redaction/java/com.groupdocs.redaction.redactions/ReplacementOptions).
  • Terapkan dalam perubahan pada dokumen menggunakan metode apply().
  • Simpan dokumen yang telah disunting menggunakan metode save() yang sesuai.

Kode Java berikut menunjukkan cara menemukan pola teks tertentu dalam dokumen PDF menggunakan RegEx dan kemudian mengganti/menyembunyikannya dengan beberapa teks lain.

// Temukan teks dalam PDF menggunakan ekspresi reguler dan ganti dengan teks lain menggunakan Java
final Redactor redactor  = new Redactor("path/document.pdf");
redactor.apply(new RegexRedaction("\\d{2}\\s*\\d{2}[^\\d]*\\d{6}", new ReplacementOptions("[censored]")));
redactor.save();

Output dari kode di atas adalah sebagai berikut.

Ganti Teks dengan Kotak Berwarna di Java

Jika Anda hanya ingin menyembunyikan informasi rahasia yang dicari di dalam file PDF Anda, Anda cukup menutupinya. API memungkinkan Anda menyembunyikan teks yang dicari. Kode berikut menempatkan kotak hitam di atas teks pribadi yang disebutkan di Java.

// Temukan teks dalam PDF dan sembunyikan dengan menggambar persegi panjang di atasnya menggunakan Java
final Redactor redactor  = new Redactor("path/document.pdf");
redactor.apply(new ExactPhraseRedaction("John Doe", true, new ReplacementOptions(java.awt.Color.BLACK)));
redactor.save();

Output dari kode di atas adalah sebagai berikut.

Dapatkan Lisensi API Gratis

Anda bisa mendapatkan lisensi sementara gratis untuk menggunakan API tanpa batasan evaluasi.

Kesimpulan

Singkatnya, kami belajar cara menemukan teks tertentu dalam file PDF menggunakan teknik pencarian yang berbeda. Kemudian kami menyunting file PDF dengan mengganti atau menyembunyikan teks di dalam aplikasi di Java. Lebih tepatnya, kami melakukan pencarian sederhana untuk kata, frasa, mencari dengan sensitivitas huruf besar-kecil, dan dengan menggunakan RegEx di Java. Terakhir, kami mengubah hasil pencarian dengan teks lain atau hanya menyembunyikannya dengan warna di atasnya.

Untuk detail selengkapnya tentang API, kunjungi dokumentasi. Untuk pertanyaan, hubungi kami melalui forum.

Lihat juga