Hapus Tanda Tangan dari File PDF
Hapus Tanda Tangan Digital dari File PDF
Ketika tanda tangan telah ditambahkan ke file PDF, adalah mungkin untuk menghapusnya. Anda dapat menghapus tanda tangan tertentu, atau semua tanda tangan dalam sebuah file. Metode tercepat untuk menghapus tanda tangan juga menghapus bidang tanda tangan, tetapi dimungkinkan untuk hanya menghapus tanda tangan, menyisakan bidang tanda tangan sehingga file dapat ditandatangani lagi.
Metode RemoveSignature kelas PdfFileSignature memungkinkan Anda menghapus tanda tangan dari file PDF. Metode ini mengambil nama tanda tangan sebagai input. Anda dapat menentukan nama tanda tangan secara langsung, untuk menghapus semua tanda tangan, dapatkan nama tanda tangan menggunakan metode getSignNames.
Cuplikan kode berikut menunjukkan cara menghapus tanda tangan digital dari file PDF.
public static void RemoveSignature() {
// Buat objek PdfFileSignature
PdfFileSignature pdfSign = new PdfFileSignature();
// Buka dokumen PDF
pdfSign.bindPdf(_dataDir + "DigitallySign.pdf");
// Dapatkan daftar nama tanda tangan
List<String> sigNames = pdfSign.getSignNames();
// Hapus semua tanda tangan dari file PDF
for (int index = 0; index < sigNames.size(); index++) {
System.out.println("Removed " + sigNames.get(index));
pdfSign.removeSignature(sigNames.get(index));
}
// Simpan file PDF yang telah diperbarui
pdfSign.save(_dataDir + "RemoveSignature_out.pdf");
}
Hapus Tanda Tangan tetapi Pertahankan Bidang Tanda Tangan
Seperti yang ditunjukkan di atas, metode removeSignature dari kelas PdfFileSignature memungkinkan Anda menghapus bidang tanda tangan dari file PDF. Ketika menggunakan metode ini dengan versi sebelum 9.3.0, baik tanda tangan maupun bidang tanda tangan akan dihapus. Beberapa pengembang ingin menghapus hanya tanda tangan dan mempertahankan bidang tanda tangan sehingga dapat digunakan untuk menandatangani kembali dokumen tersebut. Untuk mempertahankan bidang tanda tangan dan hanya menghapus tanda tangan, silakan gunakan cuplikan kode berikut.
public static void RemoveSignatureButKeepField() {
// Buat objek PdfFileSignature
PdfFileSignature pdfSign = new PdfFileSignature();
// Buka dokumen PDF
pdfSign.bindPdf(_dataDir + "DigitallySign.pdf");
pdfSign.removeSignature("Signature1", false);
// Simpan file PDF yang diperbarui
pdfSign.save(_dataDir + "RemoveSignature_out.pdf");
}
Contoh berikut menunjukkan cara menghapus semua tanda tangan dari bidang.
public static void RemoveSignatureButKeepField2() {
// Buat objek PdfFileSignature
PdfFileSignature pdfSign = new PdfFileSignature();
// Buka dokumen PDF
pdfSign.bindPdf(_dataDir + "DigitallySign.pdf");
List<String> sigNames = pdfSign.getSignNames();
for (String sigName : sigNames) {
pdfSign.removeSignature(sigName, false);
}
// Simpan file PDF yang diperbarui
pdfSign.save(_dataDir + "RemoveSignature_out.pdf");
}