Cómo configurar las opciones de codificación en Aspose.BarCode FOSS
Problem
Cada simbología de código de bar tiene sus propias reglas de codificación — niveles de corrección de error para el Código QR, modos de encodamiento para El Códico 128, comprobar la manipulación de números para EAN/UPC. Aspose.BarCode FOSS para Python proporciona una clase de opciones dedicada por símbolo para que pueda controlar estos parámetros en tiempo de generación.
import aspose_barcode_foss as barcode
from aspose_barcode_foss import QrOptions, QrErrorCorrectionLevel
bc = barcode.qr(
"https://example.com",
encode=QrOptions(error_correction_level=QrErrorCorrectionLevel.H),
)
svg = bc.to_svg()Prerequisites
- Python 3.12 o más tarde
- Gestión de paquetes Pip
aspose-barcode-fossInstalado porpip install aspose-barcode-foss
Opciones de código QR
El QrOptions Control de clase codificación QR. error_correction_level Para uno de los QrErrorCorrectionLevel.L, M, Q,o H. niveles más altos aumentan la redundancia a costa de los símbolos más grandes. encoding_mode Para obtener un formato de datos QR (QrEncodeMode.NUMERIC, ALPHANUMERIC, BYTE,o KANJIo dejarlo como AUTO para la selección automática. el version la propiedad (1–40) controla el tamaño del símbolo, y mask (0-7) sobrepasa el patrón de la máscara.
from aspose_barcode_foss import QrOptions, QrErrorCorrectionLevel, QrEncodeMode
options = QrOptions(
error_correction_level=QrErrorCorrectionLevel.H,
encoding_mode=QrEncodeMode.BYTE,
version=5,
)
bc = barcode.qr("DATA", encode=options)128 Opciones de código
El Code128Options Exposiciones de clase encode_mode Con valores de Code128EncodeMode: AUTO, CODE_A, CODE_B, CODE_C, CODE_AB, CODE_AC, CODE_BC.En AUTO modo el codificador selecciona la representación más corta.Restricción a un subset específico (por ejemplo,., CODE_C para los datos numéricos únicamente) puede reducir la anchura del símbolo.
from aspose_barcode_foss import Code128Options, Code128EncodeMode
options = Code128Options(encode_mode=Code128EncodeMode.CODE_C)
bc = barcode.code128("123456", encode=options)39 Opciones de la
El Code39Options La clase tiene dos propiedades clave: full_ascii permite la codificación ASCII completa (tamaño ampliado que se establece más allá de las letras y los dígitos de arriba), y add_check_digit Apague un módulo-43 de control a la señal.
from aspose_barcode_foss import Code39Options
options = Code39Options(full_ascii=True, add_check_digit=True)
bc = barcode.code39("Hello", encode=options)EAN y UPC Check Digit Opciones
Ean13Options, Ean8Options, UpcaOptions,y, UpceOptions Todo el apoyo allow_check_digit_input.Por defecto, la biblioteca computa el número de verificación automáticamente — proporciona sólo los números de carga (12 para EAN-13, 7 para eAN-8, 11 para UPC-A). allow_check_digit_input=True para pasar un número de verificación pre-computado como parte de la entrada.
from aspose_barcode_foss import Ean13Options
# Auto-compute check digit (12 digits)
bc = barcode.ean13("590123412345")
# Pre-computed check digit (13 digits)
bc = barcode.ean13(
"5901234123457",
encode=Ean13Options(allow_check_digit_input=True),
)Sistema de Número UPC-E
UpceOptions añade a number_system Los códigos de barras UPC-E utilizan el sistema número “0” o “1”. Configure esta propiedad para controlar qué sistema de números prefiere el codificador utiliza.
from aspose_barcode_foss import UpceOptions
options = UpceOptions(number_system="0", allow_check_digit_input=False)
bc = barcode.upce("012345", encode=options)Opciones Resumen
| Symbology | Opciones de clase | Propiedades clave |
|---|---|---|
| Código 128 | Code128Options | encode_mode |
| Código 39 | Code39Options | full_ascii, add_check_digit |
| EAN-13 | Ean13Options | allow_check_digit_input |
| EAN-8 | Ean8Options | allow_check_digit_input |
| Código QR | QrOptions | error_correction_level, encoding_mode, version, mask |
| UPC-A | UpcaOptions | allow_check_digit_input |
| UPC-E | UpceOptions | number_system, allow_check_digit_input |