qr-pure - v2.1.0
    Preparing search index...

    Class ModeDetector

    Detector y selector de modo de codificación QR.

    Proporciona utilidades para:

    • Detectar el modo más eficiente para encodear datos
    • Verificar si datos pueden ser codificados en un modo específico
    • Encontrar la versión mínima para datos y modo dado
    // Detectar mejor modo
    const mode = ModeDetector.detectMode('12345'); // 'numeric'
    const mode2 = ModeDetector.detectMode('HELLO 123'); // 'alphanumeric'
    const mode3 = ModeDetector.detectMode('hello'); // 'byte'

    // Encontrar versión mínima
    const version = ModeDetector.findMinVersion('12345', 'numeric', 'M'); // 1
    Index

    Constructors

    Methods

    • Detecta el modo de codificación más eficiente para los datos.

      Parameters

      • data: string

        Datos a evaluar

      Returns EncodingMode

      Modo de codificación más eficiente

      Evalúa los datos y retorna el modo más eficiente:

      1. Numérico (solo dígitos 0-9) - más eficiente
      2. Alfanumérico (A-Z, 0-9, símbolos limitados) - intermedio
      3. Byte (cualquier dato) - menos eficiente pero universal
      ModeDetector.detectMode('12345');     // 'numeric'
      ModeDetector.detectMode('123.45'); // 'byte' (el punto no es numérico)
      ModeDetector.detectMode('ABC123'); // 'alphanumeric'
      ModeDetector.detectMode('Hello'); // 'byte' (minúsculas)
      ModeDetector.detectMode('HELLO-123'); // 'alphanumeric'
    • Encuentra la versión mínima que puede contener los datos.

      Parameters

      Returns QRVersion | null

      Versión mínima necesaria, o null si los datos son muy largos

      ModeDetector.findMinVersion('12345', 'numeric', 'M'); // 1
      ModeDetector.findMinVersion('HELLO', 'alphanumeric', 'H'); // 1
    • Encuentra la combinación óptima de modo y versión para los datos.

      Parameters

      Returns { mode: EncodingMode; version: QRVersion } | null

      Objeto con modo y versión óptimos, o null si los datos son muy largos

      Automáticamente selecciona el modo más eficiente y encuentra la versión mínima.

      ModeDetector.findOptimal('12345', 'M');
      // { mode: 'numeric', version: 1 }

      ModeDetector.findOptimal('Hello World!', 'H');
      // { mode: 'byte', version: 2 }
    • Obtiene la capacidad para una versión, modo y nivel de corrección dados.

      Parameters

      Returns number

      Número máximo de caracteres

      ModeDetector.getCapacity(1, 'numeric', 'M'); // 34
      ModeDetector.getCapacity(1, 'alphanumeric', 'M'); // 20
      ModeDetector.getCapacity(1, 'byte', 'M'); // 14
    • Verifica si todos los caracteres son alfanuméricos válidos.

      Parameters

      • data: string

        Datos a verificar

      Returns boolean

      true si todos los caracteres son alfanuméricos

    • Verifica si los datos son puramente numéricos.

      Parameters

      • data: string

        Datos a verificar

      Returns boolean

      true si los datos solo contienen dígitos