RemoveSignatureFields.vb
- ''
- '' This code is part of Document Solutions for PDF demos.
- '' Copyright (c) MESCIUS inc. All rights reserved.
- ''
- Imports System.IO
- Imports GrapeCity.Documents.Pdf
- Imports GrapeCity.Documents.Pdf.AcroForms
-
- '' This sample shows how to find and remove signature fields from a PDF.
- '' The code in this sample is almost identical to the code in RemoveSignatures,
- '' which also finds all signature fields, but removes just the signatures,
- '' leaving the fields.
- '' The PDF used in this sample was created by TimeSheet.
- Public Class RemoveSignatureFields
- Public Function CreatePDF(ByVal stream As Stream) As Integer
- Dim doc = New GcPdfDocument()
- Using fs As New FileStream(Path.Combine("Resources", "PDFs", "TimeSheet.pdf"), FileMode.Open, FileAccess.Read)
- doc.Load(fs)
-
- '' Fields can be children of other fields, so we use
- '' a recursive method to iterate through the whole tree:
- RemoveSignatureFields(doc.AcroForm.Fields)
-
- '' Done:
- doc.Save(stream)
- Return doc.Pages.Count
- End Using
- End Function
-
- Sub RemoveSignatureFields(ByVal fields As FieldCollection)
- For i = fields.Count - 1 To 0 Step -1
- RemoveSignatureFields(fields(i).Children)
- If TypeOf fields(i) Is SignatureField Then
- fields.RemoveAt(i)
- End If
- Next
- End Sub
- End Class
-