public void ManipulatePdf(String dest) { PdfDocument pdfDoc = new PdfDocument(new PdfReader(SRC), new PdfWriter(dest)); PdfAcroForm form = PdfAcroForm.GetAcroForm(pdfDoc, true); IDictionary <String, PdfFormField> fields = form.GetFormFields(); PdfFormField checkedField = fields[CHECKED_FIELD_NAME]; PdfFormField uncheckedField = fields[UNCHECKED_FIELD_NAME]; // Get array of possible values of the checkbox String[] states = checkedField.GetAppearanceStates(); // See all possible values in the console foreach (String state in states) { Console.Write(state + "; "); } // Search and set checked state to the previously unchecked checkbox and vice versa foreach (String state in states) { if (state.Equals(CHECKED_STATE_VALUE)) { uncheckedField.SetValue(state); } else if (state.Equals(UNCHECKED_STATE_VALUE)) { checkedField.SetValue(state); } } pdfDoc.Close(); }