Class RadioCheckField

java.lang.Object
com.lowagie.text.pdf.BaseField
com.lowagie.text.pdf.RadioCheckField

public class RadioCheckField extends BaseField
Creates a radio or a check field. Example usage:
 Document document = new Document(PageSize.A4, 50, 50, 50, 50); PdfWriter writer = PdfWriter.getInstance(document, new
 FileOutputStream("output.pdf")); document.open(); PdfContentByte cb = writer.getDirectContent(); RadioCheckField bt =
 new RadioCheckField(writer, new Rectangle(100, 100, 200, 200), "radio", "v1");
 bt.setCheckType(RadioCheckField.TYPE_CIRCLE); bt.setBackgroundColor(Color.cyan);
 bt.setBorderStyle(PdfBorderDictionary.STYLE_SOLID); bt.setBorderColor(Color.red); bt.setTextColor(Color.yellow);
 bt.setBorderWidth(BaseField.BORDER_WIDTH_THICK); bt.setChecked(false); PdfFormField f1 = bt.getRadioField();
 bt.setOnValue("v2"); bt.setChecked(true); bt.setBox(new Rectangle(100, 300, 200, 400)); PdfFormField f2 =
 bt.getRadioField(); bt.setChecked(false); PdfFormField top = bt.getRadioGroup(true, false); bt.setOnValue("v3");
 bt.setBox(new Rectangle(100, 500, 200, 600)); PdfFormField f3 = bt.getRadioField(); top.addKid(f1); top.addKid(f2);
 top.addKid(f3); writer.addAnnotation(top); bt = new RadioCheckField(writer, new Rectangle(300, 300, 400, 400),
 "check1", "Yes"); bt.setCheckType(RadioCheckField.TYPE_CHECK); bt.setBorderWidth(BaseField.BORDER_WIDTH_THIN);
 bt.setBorderColor(Color.black); bt.setBackgroundColor(Color.white); PdfFormField ck = bt.getCheckField();
 writer.addAnnotation(ck); document.close();
 
  • Field Details

    • TYPE_CHECK

      public static final int TYPE_CHECK
      A field with the symbol check
      See Also:
    • TYPE_CIRCLE

      public static final int TYPE_CIRCLE
      A field with the symbol circle
      See Also:
    • TYPE_CROSS

      public static final int TYPE_CROSS
      A field with the symbol cross
      See Also:
    • TYPE_DIAMOND

      public static final int TYPE_DIAMOND
      A field with the symbol diamond
      See Also:
    • TYPE_SQUARE

      public static final int TYPE_SQUARE
      A field with the symbol square
      See Also:
    • TYPE_STAR

      public static final int TYPE_STAR
      A field with the symbol star
      See Also:
    • typeChars

      private static String[] typeChars
    • checkType

      private int checkType
      Holds value of property checkType.
    • onValue

      private String onValue
      Holds value of property onValue.
    • checked

      private boolean checked
      Holds value of property checked.
  • Constructor Details

    • RadioCheckField

      public RadioCheckField(PdfWriter writer, Rectangle box, String fieldName, String onValue)
      Creates a new instance of RadioCheckField
      Parameters:
      writer - the document PdfWriter
      box - the field location and dimensions
      fieldName - the field name. It must not be null
      onValue - the value when the field is checked
    • RadioCheckField

      public RadioCheckField(PdfWriter writer, String fieldName, String onValue)
      Creates a new instance of parent RadioCheckField with the default appearance of type 'cross'
      Parameters:
      writer - the document PdfWriter
      fieldName - the field name. It must not be null
      onValue - the value when the field is checked
  • Method Details

    • getAppearance

      public static PdfAppearance getAppearance(boolean on, PdfWriter writer, int checkType, int rotation, int borderStyle, Rectangle box, float borderWidth, float fontSize, String text, Color textColor, Color backgroundColor, Color borderColor, BaseFont ufont)
      Gets the field appearance.

      For Circle and Cross own appearances are drawn. For all other styles the ZapfDingbats font it used.

      Returns:
      the appearance
    • getAppearanceRadioCircle

      public static PdfAppearance getAppearanceRadioCircle(boolean on, PdfWriter writer, Rectangle box, int rotation, Color backgroundColor, float borderWidth, Color borderColor, Color textColor)
      Gets the special field appearance for the radio circle.
      Parameters:
      on - true for the checked state otherwise, false
      Returns:
      the appearance
    • getAppearanceRadioCross

      public static PdfAppearance getAppearanceRadioCross(boolean on, PdfWriter writer, Rectangle box, int rotation, Color backgroundColor, float borderWidth, Color borderColor, Color textColor)
      Gets the special field appearance for the radio circle.
      Parameters:
      on - true for the checked state, false otherwise
      Returns:
      the appearance
    • getCheckType

      public int getCheckType()
      Getter for property checkType.
      Returns:
      Value of property checkType.
    • setCheckType

      public void setCheckType(int checkType)
      Sets the checked symbol. It can be TYPE_CHECK, TYPE_CIRCLE, TYPE_CROSS, TYPE_DIAMOND, TYPE_SQUARE and TYPE_STAR.
      Parameters:
      checkType - the checked symbol
    • getOnValue

      public String getOnValue()
      Getter for property onValue.
      Returns:
      Value of property onValue.
    • setOnValue

      public void setOnValue(String onValue)
      Sets the value when the field is checked.
      Parameters:
      onValue - the value when the field is checked
    • isChecked

      public boolean isChecked()
      Getter for property checked.
      Returns:
      Value of property checked.
    • setChecked

      public void setChecked(boolean checked)
      Sets the state of the field to checked or unchecked.
      Parameters:
      checked - the state of the field, true for checked and false for unchecked
    • getRadioGroup

      public PdfFormField getRadioGroup(boolean noToggleToOff, boolean radiosInUnison)
      Gets a radio group. It's composed of the field specific keys, without the widget ones. This field is to be used as a field aggregator with addKid().
      Parameters:
      noToggleToOff - if true, exactly one radio button must be selected at all times; clicking the currently selected button has no effect. If false, clicking the selected button deselects it, leaving no button selected.
      radiosInUnison - if true, a group of radio buttons within a radio button field that use the same value for the on state will turn on and off in unison; that is if one is checked, they are all checked. If false, the buttons are mutually exclusive (the same behavior as HTML radio buttons)
      Returns:
      the radio group
    • getCheckboxParent

      public PdfFormField getCheckboxParent()
      Gets a parent of a checkbox autofill parent. It is composed of the field specific keys, without the widget ones. This field is to be used as a field aggregator with addKid().
      Returns:
      the radio group
    • getKidField

      public PdfFormField getKidField() throws IOException, DocumentException
      Gets the child field. It's only composed of the widget keys and is valid for all autofill fields and radiobuttons. Has to be used with getRadioGroup(boolean, boolean) or getCheckboxParent().
      Returns:
      the radio field
      Throws:
      IOException - on error
      DocumentException - on error
    • getFullField

      public PdfFormField getFullField() throws IOException, DocumentException
      Gets the full parent field (There are no kids) This is the case for non-autofill fields and non-radiobutton fields
      Returns:
      the check field
      Throws:
      IOException - on error
      DocumentException - on error
    • getField

      protected PdfFormField getField(boolean isKid) throws IOException, DocumentException
      Gets a radio or check field.
      Parameters:
      isKid - true to get a child field, false to get full parent field
      Returns:
      the field
      Throws:
      IOException - on error
      DocumentException - on error