com.google.zxing

## Enum EncodeHintType

- java.lang.Object
- - java.lang.Enum<EncodeHintType>
  - - com.google.zxing.EncodeHintType

- All Implemented Interfaces:
    Serializable, Comparable<EncodeHintType>

      public enum EncodeHintType
      extends Enum<EncodeHintType>

  These are a set of hints that you may pass to Writers to specify their behavior.

- - ### Enum Constant Summary

    Enum Constants
    Enum Constant and Description
    `AZTEC_LAYERS` Specifies the required number of layers for an Aztec code.
    `CHARACTER_SET` Specifies what character encoding to use where applicable (type `String`)
    `DATA_MATRIX_SHAPE` Specifies the matrix shape for Data Matrix (type com.google.zxing.datamatrix.encoder.SymbolShapeHint)
    `ERROR_CORRECTION` Specifies what degree of error correction to use, for example in QR Codes.
    `GS1_FORMAT` Specifies whether the data should be encoded to the GS1 standard (type `Boolean`, or "true" or "false" `String` value).
    `MARGIN` Specifies margin, in pixels, to use when generating the barcode.
    `PDF417_COMPACT` Specifies whether to use compact mode for PDF417 (type `Boolean`, or "true" or "false" `String` value).
    `PDF417_COMPACTION` Specifies what compaction mode to use for PDF417 (type com.google.zxing.pdf417.encoder.Compaction Compaction or `String` value of one of its enum values).
    `PDF417_DIMENSIONS` Specifies the minimum and maximum number of rows and columns for PDF417 (type com.google.zxing.pdf417.encoder.Dimensions Dimensions).
    `QR_MASK_PATTERN` Specifies the QR code mask pattern to be used.
    `QR_VERSION` Specifies the exact version of QR code to be encoded.

  - ### Method Summary

    All Methods Static Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `static EncodeHintType` | `valueOf(String name)` Returns the enum constant of this type with the specified name.
    `static EncodeHintType[]` | `values()` Returns an array containing the constants of this enum type, in the order they are declared.

    - ### Methods inherited from class java.lang.Enum

      `clone, compareTo, equals, finalize, getDeclaringClass, hashCode, name, ordinal, toString, valueOf`

    - ### Methods inherited from class java.lang.Object

      `getClass, notify, notifyAll, wait, wait, wait`

- - ### Enum Constant Detail

    - #### AZTEC_LAYERS

          public static final EncodeHintType AZTEC_LAYERS

      Specifies the required number of layers for an Aztec code. A negative number (-1, -2, -3, -4) specifies a compact Aztec code. 0 indicates to use the minimum number of layers (the default). A positive number (1, 2, .. 32) specifies a normal (non-compact) Aztec code. (Type `Integer`, or `String` representation of the integer value).

    - #### CHARACTER_SET

          public static final EncodeHintType CHARACTER_SET

      Specifies what character encoding to use where applicable (type `String`)

    - #### DATA_MATRIX_SHAPE

          public static final EncodeHintType DATA_MATRIX_SHAPE

      Specifies the matrix shape for Data Matrix (type com.google.zxing.datamatrix.encoder.SymbolShapeHint)

    - #### ERROR_CORRECTION

          public static final EncodeHintType ERROR_CORRECTION

      Specifies what degree of error correction to use, for example in QR Codes. Type depends on the encoder. For example for QR codes it's type `ErrorCorrectionLevel`. For Aztec it is of type `Integer`, representing the minimal percentage of error correction words. For PDF417 it is of type `Integer`, valid values being 0 to 8. In all cases, it can also be a `String` representation of the desired value as well. Note: an Aztec symbol should have a minimum of 25% EC words.

    - #### GS1_FORMAT

          public static final EncodeHintType GS1_FORMAT

      Specifies whether the data should be encoded to the GS1 standard (type `Boolean`, or "true" or "false" `String` value).

    - #### MARGIN

          public static final EncodeHintType MARGIN

      Specifies margin, in pixels, to use when generating the barcode. The meaning can vary by format; for example it controls margin before and after the barcode horizontally for most 1D formats. (Type `Integer`, or `String` representation of the integer value).

    - #### PDF417_COMPACT

          public static final EncodeHintType PDF417_COMPACT

      Specifies whether to use compact mode for PDF417 (type `Boolean`, or "true" or "false" `String` value).

    - #### PDF417_COMPACTION

          public static final EncodeHintType PDF417_COMPACTION

      Specifies what compaction mode to use for PDF417 (type com.google.zxing.pdf417.encoder.Compaction Compaction or `String` value of one of its enum values).

    - #### PDF417_DIMENSIONS

          public static final EncodeHintType PDF417_DIMENSIONS

      Specifies the minimum and maximum number of rows and columns for PDF417 (type com.google.zxing.pdf417.encoder.Dimensions Dimensions).

    - #### QR_MASK_PATTERN

          public static final EncodeHintType QR_MASK_PATTERN

      Specifies the QR code mask pattern to be used. Allowed values are 0..QRCode.NUM_MASK_PATTERNS-1. By default the code will automatically select the optimal mask pattern. * (Type `Integer`, or `String` representation of the integer value).

    - #### QR_VERSION

          public static final EncodeHintType QR_VERSION

      Specifies the exact version of QR code to be encoded. (Type `Integer`, or `String` representation of the integer value).

  - ### Method Detail

    - #### valueOf

          public static EncodeHintType valueOf(String name)

      Returns the enum constant of this type with the specified name. The string must match exactly an identifier used to declare an enum constant in this type. (Extraneous whitespace characters are not permitted.)
      Parameters:
        `name` - the name of the enum constant to be returned.
      Returns:
        the enum constant with the specified name
      Throws:
        `IllegalArgumentException` - if this enum type has no constant with the specified name
        `NullPointerException` - if the argument is null

    - #### values

          public static EncodeHintType[] values()

      Returns an array containing the constants of this enum type, in the order they are declared. This method may be used to iterate over the constants as follows:

          for (EncodeHintType c : EncodeHintType.values())
              System.out.println(c);

      Returns:
        an array containing the constants of this enum type, in the order they are declared