Remove Signature from PDF File

Hapus Tanda Tangan Digital dari File PDF

Ketika tanda tangan telah ditambahkan ke file PDF, mungkin untuk menghapusnya. Anda dapat menghapus baik tanda tangan tertentu, atau semua tanda tangan dalam file. Metode tercepat untuk menghapus tanda tangan juga menghapus bidang tanda tangan, tetapi mungkin untuk hanya menghapus tanda tangan, mempertahankan bidang tanda tangan sehingga file dapat ditandatangani lagi.

Metode RemoveSignature kelas PdfFileSignature memungkinkan Anda untuk 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
            var sigNames = pdfSign.GetSignNames();
            // Hapus semua tanda tangan dari file PDF
            for (int index = 0; index < sigNames.Count; index++)
            {
                Console.WriteLine($"Removed {sigNames[index]}");
                pdfSign.RemoveSignature(sigNames[index]);
            }
            // Simpan file PDF yang diperbarui
            pdfSign.Save(_dataDir + "RemoveSignature_out.pdf");
        }

Hapus Tanda Tangan tetapi Tetap Pertahankan Bidang Tanda Tangan

Seperti yang ditunjukkan di atas, metode PdfFileSignature class RemoveSignature memungkinkan Anda menghapus bidang tanda tangan dari file PDF. Saat 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 ulang dokumen. 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");

            var sigNames = pdfSign.GetSignNames();
            foreach (var sigName in sigNames)
            {
                pdfSign.RemoveSignature(sigName, false);
            }

            // Simpan file PDF yang diperbarui
            pdfSign.Save(_dataDir + "RemoveSignature_out.pdf");
        }