encode method

  1. @override
BitMatrix encode(
  1. String contents,
  2. BarcodeFormat format,
  3. int width,
  4. int height, [
  5. EncodeHint? hints,
])
override

@param contents The contents to encode in the barcode @param format The barcode format to generate @param width The preferred width in pixels @param height The preferred height in pixels @param hints Additional parameters to supply to the encoder @return BitMatrix representing encoded barcode image @throws WriterException if contents cannot be encoded legally in a format

Implementation

@override
BitMatrix encode(
  String contents,
  BarcodeFormat format,
  int width,
  int height, [
  EncodeHint? hints,
]) {
  Encoding? charset; // Do not add any ECI code by default
  int eccPercent = Encoder.defaultEcPercent;
  int layers = Encoder.defaultAztecLayers;
  if (hints != null) {
    if (hints.characterSet != null) {
      charset = CharacterSetECI.getCharacterSetECIByName(
        hints.characterSet!,
      )?.charset;
    }
    if (hints.errorCorrection != null) {
      eccPercent = hints.errorCorrection!;
    }
    if (hints.aztecLayers != null) {
      layers = hints.aztecLayers!;
    }
  }
  return _encodeStatic(
    contents,
    format,
    width,
    height,
    charset,
    eccPercent,
    layers,
  );
}