Options
All
  • Public
  • Public/Protected
  • All
Menu

Class QR

The class for containing all information to generate a QR code

Hierarchy

  • QR

Constructors

constructor

  • new QR(version: number, ecl: "LOW" | "MEDIUM" | "QUARTILE" | "HIGH", modules?: Module[][]): QR
  • Create a new QR instance

    Parameters

    • version: number

      The version of QR code

    • ecl: "LOW" | "MEDIUM" | "QUARTILE" | "HIGH"

      The error correction level

    • Optional modules: Module[][]

      The initial data for copying

    Returns QR

Properties

Private Readonly ecl

ecl: "LOW" | "MEDIUM" | "QUARTILE" | "HIGH"

The error correction level

Private modules

modules: Module[][] = []

All data represented by a 2D array of module objects

Private Readonly size

size: number

The size of QR code according to the version

Private Readonly version

version: number

The version of QR code

Methods

applyMask

  • applyMask(mask: QR): void
  • Apply the given <mask> to the data in the class

    Parameters

    • mask: QR

      The QR object

    Returns void

computePenalty

  • computePenalty(): number
  • Compute the penalty for the class

    Returns number

copy

  • copy(): QR
  • Deep copy itself

    Returns QR

Private drawAlignmentPatterns

  • drawAlignmentPatterns(): void
  • Draw the alignment patterns

    Returns void

Private drawDarkPattern

  • drawDarkPattern(): void
  • Draw the dark pattern

    Returns void

Private drawFinderPatterns

  • drawFinderPatterns(): void
  • Draw the finder patterns

    Returns void

drawFormatPatterns

  • drawFormatPatterns(mask?: number): void
  • Draw the format patterns

    Parameters

    • Optional mask: number

    Returns void

Private drawSeparatorPatterns

  • drawSeparatorPatterns(): void
  • Draw the separator patterns

    Returns void

Private drawTimingPatterns

  • drawTimingPatterns(): void
  • Draw the timing patterns

    Returns void

Private drawVersionInfoPatterns

  • drawVersionInfoPatterns(): void
  • Draw the version information patterns

    Returns void

extend

  • extend(): void
  • Add a quiet zone - a 4-module-wide area of light modules around the QR code

    Returns void

generateAllMasks

  • generateAllMasks(): QR[]
  • Generate all kinds of masks

    Returns QR[]

generateDataPath

  • generateDataPath(): [number, number][]
  • Generate an array of positions for placing data

    Returns [number, number][]

generateMask

  • generateMask(which: number): QR
  • Generate a mask specified by the given <which>

    Parameters

    • which: number

    Returns QR

Private generateQuietRows

  • Add 4 rows of light modules

    Returns QuietModule[][]

getModules

  • Return the data

    Returns Module[][]

getSize

  • getSize(): number
  • Return the size

    Returns number

initialize

  • initialize(): void
  • Initializing by drawing fixed patterns

    Returns void

placeCodeword

  • placeCodeword(data: Codeword[], path: [number, number][]): void
  • Place the given <data> into the class through <path>

    Parameters

    • data: Codeword[]

      The array of codeword

    • path: [number, number][]

      The array of position

    Returns void

toString

  • toString(): string
  • Stringify the data

    Returns string

Static Private getBitAt

  • getBitAt(bits: number, index: number): number
  • Get the specific bit of the given <bits> at <index> from right to left

    Parameters

    • bits: number
    • index: number

    Returns number

Generated using TypeDoc