Jak nakonfigurovat možnosti kódování v Aspose.BarCode FOSS

Jak nakonfigurovat možnosti kódování v Aspose.BarCode FOSS

Problem

Každá symbologie čárových kódů má svá vlastní pravidla kódování — úrovně korekce chyb pro QR Code, režimy kódování pro Code 128, zpracování kontrolní číslice pro EAN/UPC. Aspose.BarCode FOSS pro Python poskytuje dedikovanou třídu možností pro každou symbologii, takže můžete tyto parametry řídit během generová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()

Předpoklady

  • Python 3.12 nebo novější
  • správce balíčků pip
  • aspose-barcode-foss postavený ze zdrojových kódů

QR Code Možnosti

Třída QrOptions řídí kódování QR Code. Nastavte error_correction_level na jeden z QrErrorCorrectionLevel.L, M, Q nebo H. Vyšší úrovně zvyšují redundanci na úkor větších symbolů. Použijte encoding_mode k výběru konkrétního datového režimu QR (QrEncodeMode.NUMERIC, ALPHANUMERIC, BYTE nebo KANJI), nebo jej nechte jako AUTO pro automatický výběr. Vlastnost version (1–40) řídí velikost symbolu a mask (0–7) přepisuje maskovací vzor.

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)

Code 128 Možnosti

Třída Code128Options vystavuje encode_mode s hodnotami z Code128EncodeMode: AUTO, CODE_A, CODE_B, CODE_C, CODE_AB, CODE_AC, CODE_BC. V režimu AUTO kodér vybírá nejkratší reprezentaci. Omezení na konkrétní podmnožinu (např. CODE_C pro data jen s čísly) může snížit šířku symbolu.

from aspose_barcode_foss import Code128Options, Code128EncodeMode

options = Code128Options(encode_mode=Code128EncodeMode.CODE_C)
bc = barcode.code128("123456", encode=options)

Code 39 Možnosti

Třída Code39Options má dvě klíčové vlastnosti: full_ascii umožňuje plné kódování ASCII (rozšířená znaková sada nad rámec velkých písmen a číslic) a add_check_digit přidává kontrolní číslici modulo-43 ke symbolu.

from aspose_barcode_foss import Code39Options

options = Code39Options(full_ascii=True, add_check_digit=True)
bc = barcode.code39("Hello", encode=options)

Možnosti kontrolní číslice EAN a UPC

Ean13Options, Ean8Options, UpcaOptions a UpceOptions všechny podporují allow_check_digit_input. Ve výchozím nastavení knihovna vypočítává kontrolní číslici automaticky — zadejte jen datové číslice (12 pro EAN-13, 7 pro EAN-8, 11 pro UPC-A). Nastavte allow_check_digit_input=True, abyste předpřepočítanou kontrolní číslici předali jako součást vstupu.

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),
)

UPC-E Číselný systém

UpceOptions přidává vlastnost number_system. Čárové kódy UPC-E používají číselný systém “0” nebo “1”. Nastavte tuto vlastnost pro řízení, který číselný systémový prefix kodér používá.

from aspose_barcode_foss import UpceOptions

options = UpceOptions(number_system="0", allow_check_digit_input=False)
bc = barcode.upce("012345", encode=options)

Shrnutí možností

SymbologyTřída OptionsKlíčové vlastnosti
Code 128Code128Optionsencode_mode
Code 39Code39Optionsfull_ascii, add_check_digit
EAN-13Ean13Optionsallow_check_digit_input
EAN-8Ean8Optionsallow_check_digit_input
QR CodeQrOptionserror_correction_level, encoding_mode, version, mask
UPC-AUpcaOptionsallow_check_digit_input
UPC-EUpceOptionsnumber_system, allow_check_digit_input

Viz také:

 Čeština