barcode.go raw

   1  package barcode
   2  
   3  import "image"
   4  
   5  const (
   6  	TypeAztec           = "Aztec"
   7  	TypeCodabar         = "Codabar"
   8  	TypeCode128         = "Code 128"
   9  	TypeCode39          = "Code 39"
  10  	TypeCode93          = "Code 93"
  11  	TypeDataMatrix      = "DataMatrix"
  12  	TypeEAN8            = "EAN 8"
  13  	TypeEAN13           = "EAN 13"
  14  	TypePDF             = "PDF417"
  15  	TypeQR              = "QR Code"
  16  	Type2of5            = "2 of 5"
  17  	Type2of5Interleaved = "2 of 5 (interleaved)"
  18  )
  19  
  20  // Contains some meta information about a barcode
  21  type Metadata struct {
  22  	// the name of the barcode kind
  23  	CodeKind string
  24  	// contains 1 for 1D barcodes or 2 for 2D barcodes
  25  	Dimensions byte
  26  }
  27  
  28  // a rendered and encoded barcode
  29  type Barcode interface {
  30  	image.Image
  31  	// returns some meta information about the barcode
  32  	Metadata() Metadata
  33  	// the data that was encoded in this barcode
  34  	Content() string
  35  }
  36  
  37  // Additional interface that some barcodes might implement to provide
  38  // the value of its checksum.
  39  type BarcodeIntCS interface {
  40  	Barcode
  41  	CheckSum() int
  42  }
  43