Temukan dan ganti teks dalam PDF Java

Dalam berbagai kasus, Anda mungkin perlu mencari dan mengganti bagian teks tertentu dalam dokumen PDF. Namun, mencari dan memperbarui setiap kejadian secara manual dapat menghabiskan waktu dan tenaga ekstra. Untuk kasus seperti itu, opsi temukan dan ganti membuat hidup Anda lebih mudah. Pada artikel ini, Anda akan mempelajari cara menemukan dan mengganti teks dalam dokumen PDF menggunakan Java.

API Java untuk Menemukan dan Mengganti Teks dalam PDF - Unduhan Gratis

Aspose.PDF for Java dirancang untuk menghasilkan dan memanipulasi file PDF dari dalam aplikasi Java. API menyediakan berbagai fitur manipulasi PDF dasar dan lanjutan termasuk menemukan dan mengganti teks. Anda dapat mengunduh API atau menginstalnya menggunakan konfigurasi Maven berikut.

<repository>
    <id>AsposeJavaAPI</id>
    <name>Aspose Java API</name>
    <url>https://repository.aspose.com/repo/</url>
</repository>
<dependency>
    <groupId>com.aspose</groupId>
    <artifactId>aspose-pdf</artifactId>
    <version>21.1</version>    
</dependency>

Temukan dan Ganti Teks dalam PDF menggunakan Java

Untuk mengganti teks tertentu dalam PDF, pertama-tama Anda akan mendapatkan semua fragmen teks yang cocok dengan string pencarian. Setelah Anda memilikinya, cukup ganti setiap fragmen dengan teks yang diperbarui satu per satu.

Berikut langkah-langkah mencari dan mengganti teks pada file PDF menggunakan Java.

Contoh kode berikut menunjukkan cara menemukan dan mengganti teks dalam PDF.

// Untuk contoh lengkap dan file data, silakan buka https://github.com/aspose-pdf/Aspose.Pdf-for-Java
// Buka dokumen
Document pdfDocument = new Document("source.pdf");

// Buat objek TextAbsorber untuk menemukan semua contoh frase pencarian masukan
TextFragmentAbsorber textFragmentAbsorber = new TextFragmentAbsorber("sample");

// Terima penyerap untuk semua halaman dokumen
pdfDocument.getPages().accept(textFragmentAbsorber);

// Dapatkan fragmen teks yang diekstrak ke dalam koleksi
TextFragmentCollection textFragmentCollection = textFragmentAbsorber.getTextFragments();

// Ulangi fragmen
for (TextFragment textFragment : (Iterable<TextFragment>) textFragmentCollection) {
	// Perbarui teks dan properti lainnya
	textFragment.setText("New Pharase");
	textFragment.getTextState().setFont(FontRepository.findFont("Verdana"));
	textFragment.getTextState().setFontSize(22);
	textFragment.getTextState().setForegroundColor(Color.getBlue());
	textFragment.getTextState().setBackgroundColor(Color.getGray());
}
// Simpan file PDF yang diperbarui
pdfDocument.save("Updated_Text.pdf");

Cari dan Ganti Teks pada Halaman Tertentu di PDF

Alih-alih menemukan dan mengganti teks di seluruh PDF, Anda dapat menentukan satu halaman tempat Anda ingin mengganti kemunculan teks. Dalam hal ini, Anda akan menerima TextFragmentAbsorber untuk halaman tertentu hanya dengan menentukan indeks halaman.

Berikut ini adalah langkah-langkah untuk mencari dan mengganti teks pada halaman tertentu di PDF di Java.

Contoh kode berikut menunjukkan cara menemukan dan mengganti teks pada halaman tertentu di PDF menggunakan Java.

// Untuk contoh lengkap dan file data, silakan buka https://github.com/aspose-pdf/Aspose.Pdf-for-Java
// Buka dokumen
Document pdfDocument = new Document("source.pdf");

// Buat objek TextAbsorber untuk menemukan semua contoh frase pencarian masukan
TextFragmentAbsorber textFragmentAbsorber = new TextFragmentAbsorber("sample");

// Terima penyerap untuk halaman pertama dokumen
pdfDocument.getPages().get_Item(0).accept(textFragmentAbsorber);

// Dapatkan fragmen teks yang diekstrak ke dalam koleksi
TextFragmentCollection textFragmentCollection = textFragmentAbsorber.getTextFragments();

// Ulangi fragmen
for (TextFragment textFragment : (Iterable<TextFragment>) textFragmentCollection) {
	// Perbarui teks dan properti lainnya
	textFragment.setText("New Pharase");
	textFragment.getTextState().setFont(FontRepository.findFont("Verdana"));
	textFragment.getTextState().setFontSize(22);
	textFragment.getTextState().setForegroundColor(Color.getBlue());
	textFragment.getTextState().setBackgroundColor(Color.getGray());
}
// Simpan file PDF yang diperbarui
pdfDocument.save("Updated_Text.pdf");

Temukan dan Ganti Teks menggunakan Ekspresi Reguler dalam PDF

Anda juga dapat menentukan ekspresi reguler untuk mencari teks yang cocok dengan pola tertentu seperti email, SSN, dll. Berikut adalah langkah-langkah untuk menentukan dan menggunakan ekspresi reguler untuk mencari dan mengganti teks dalam PDF menggunakan Java.

Contoh kode berikut menunjukkan cara menemukan dan mengganti teks dalam PDF menggunakan ekspresi reguler.

// Untuk contoh lengkap dan file data, silakan buka https://github.com/aspose-pdf/Aspose.Pdf-for-Java
// Buka dokumen
Document pdfDocument = new Document("input.pdf");

// Buat objek TextAbsorber untuk menemukan semua contoh frase pencarian masukan
TextFragmentAbsorber textFragmentAbsorber = new TextFragmentAbsorber("\\d{4}-\\d{4}"); // like 1999-2000

// Setel opsi pencarian teks untuk mengaktifkan penggunaan ekspresi reguler
TextSearchOptions textSearchOptions = new TextSearchOptions(true);
textFragmentAbsorber.setTextSearchOptions(textSearchOptions);

// Terima penyerap untuk semua halaman dokumen
pdfDocument.getPages().accept(textFragmentAbsorber);

// Dapatkan fragmen teks yang diekstrak ke dalam koleksi
TextFragmentCollection textFragmentCollection = textFragmentAbsorber.getTextFragments();

// Ulangi fragmen
for (TextFragment textFragment : (Iterable<TextFragment>) textFragmentCollection) {
	// Perbarui teks dan properti lainnya
	textFragment.setText("New Pharase");
	textFragment.getTextState().setFont(FontRepository.findFont("Verdana"));
	textFragment.getTextState().setFontSize(22);
	textFragment.getTextState().setForegroundColor(Color.getBlue());
	textFragment.getTextState().setBackgroundColor(Color.getGray());
}

// Simpan file PDF yang diperbarui
pdfDocument.save("Updated_Text.pdf");

Dapatkan Lisensi API Gratis

Anda dapat mencoba API tanpa batasan evaluasi secara gratis. Dapatkan lisensi sementara gratis sekarang.

Kesimpulan

Pada artikel ini, Anda telah mempelajari cara menemukan dan mengganti teks dalam PDF menggunakan Java. Selain itu, Anda telah melihat cara menggunakan ekspresi reguler untuk mencari dan mengganti teks mengikuti pola tertentu. Anda dapat mempelajari lebih lanjut tentang Java PDF API menggunakan dokumentasi.

Lihat juga