Class OneDimensionalCodeWriter

    • Field Summary

      Fields 
      Modifier and Type Field Description
      private static java.util.regex.Pattern NUMERIC  
    • Field Detail

      • NUMERIC

        private static final java.util.regex.Pattern NUMERIC
    • Constructor Detail

      • OneDimensionalCodeWriter

        public OneDimensionalCodeWriter()
    • Method Detail

      • encode

        public abstract boolean[] encode​(java.lang.String contents)
        Encode the contents to boolean array expression of one-dimensional barcode. Start code and end code should be included in result, and side margins should not be included.
        Parameters:
        contents - barcode contents to encode
        Returns:
        a boolean[] of horizontal pixels (false = white, true = black)
      • encode

        public boolean[] encode​(java.lang.String contents,
                                java.util.Map<EncodeHintType,​?> hints)
        Can be overwritten if the encode requires to read the hints map. Otherwise it defaults to encode.
        Parameters:
        contents - barcode contents to encode
        hints - encoding hints
        Returns:
        a boolean[] of horizontal pixels (false = white, true = black)
      • encode

        public final BitMatrix encode​(java.lang.String contents,
                                      BarcodeFormat format,
                                      int width,
                                      int height)
        Description copied from interface: Writer
        Encode a barcode using the default settings.
        Specified by:
        encode in interface Writer
        Parameters:
        contents - The contents to encode in the barcode
        format - The barcode format to generate
        width - The preferred width in pixels
        height - The preferred height in pixels
        Returns:
        BitMatrix representing encoded barcode image
      • encode

        public BitMatrix encode​(java.lang.String contents,
                                BarcodeFormat format,
                                int width,
                                int height,
                                java.util.Map<EncodeHintType,​?> hints)
        Encode the contents following specified format. width and height are required size. This method may return bigger size BitMatrix when specified size is too small. The user can set both width and height to zero to get minimum size barcode. If negative value is set to width or height, IllegalArgumentException is thrown.
        Specified by:
        encode in interface Writer
        Parameters:
        contents - The contents to encode in the barcode
        format - The barcode format to generate
        width - The preferred width in pixels
        height - The preferred height in pixels
        hints - Additional parameters to supply to the encoder
        Returns:
        BitMatrix representing encoded barcode image
      • getSupportedWriteFormats

        protected java.util.Collection<BarcodeFormat> getSupportedWriteFormats()
      • renderResult

        private static BitMatrix renderResult​(boolean[] code,
                                              int width,
                                              int height,
                                              int sidesMargin)
        Returns:
        a byte array of horizontal pixels (0 = white, 1 = black)
      • checkNumeric

        protected static void checkNumeric​(java.lang.String contents)
        Parameters:
        contents - string to check for numeric characters
        Throws:
        java.lang.IllegalArgumentException - if input contains characters other than digits 0-9.
      • appendPattern

        protected static int appendPattern​(boolean[] target,
                                           int pos,
                                           int[] pattern,
                                           boolean startColor)
        Parameters:
        target - encode black/white pattern into this array
        pos - position to start encoding at in target
        pattern - lengths of black/white runs to encode
        startColor - starting color - false for white, true for black
        Returns:
        the number of elements added to target.
      • getDefaultMargin

        public int getDefaultMargin()