Wie man Encode-Optionen in Aspose.BarCode FOSS konfiguriert

Wie man Encode-Optionen in Aspose.BarCode FOSS konfiguriert

Problem

Jede Barcode-Symbologie hat ihre eigenen Kodierungsregeln — Fehlerkorrekturstufen für QR Code, Encode-Modi für Code 128, Prüfzifferbehandlung für EAN/UPC. Aspose.BarCode FOSS für Python stellt eine dedizierte Optionsklasse pro Symbologie bereit, sodass Sie diese Parameter zur Erzeugungszeit steuern können.

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

Voraussetzungen

  • Python 3.12 oder höher
  • pip-Paketmanager
  • aspose-barcode-foss aus dem Quellcode gebaut

QR Code Optionen

Die QrOptions Klasse steuert die QR Code-Codierung. Setzen Sie error_correction_level auf einen der Werte QrErrorCorrectionLevel.L, M, Q oder H. Höhere Stufen erhöhen die Redundanz auf Kosten größerer Symbole. Verwenden Sie encoding_mode, um einen bestimmten QR-Datenmodus (QrEncodeMode.NUMERIC, ALPHANUMERIC, BYTE oder KANJI) auszuwählen, oder belassen Sie ihn als AUTO für die automatische Auswahl. Die Eigenschaft version (1–40) steuert die Symbolgröße, und mask (0–7) überschreibt das Maskenmuster.

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 Optionen

Die Code128Options Klasse stellt encode_mode mit Werten aus Code128EncodeMode bereit: AUTO, CODE_A, CODE_B, CODE_C, CODE_AB, CODE_AC, CODE_BC. Im AUTO-Modus wählt der Encoder die kürzeste Darstellung. Die Einschränkung auf ein bestimmtes Teilset (z.B. CODE_C für ausschließlich numerische Daten) kann die Symbolbreite reduzieren.

from aspose_barcode_foss import Code128Options, Code128EncodeMode

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

Code 39 Optionen

Die Code39Options Klasse hat zwei wichtige Eigenschaften: full_ascii aktiviert die Full-ASCII-Codierung (erweiterter Zeichensatz über Großbuchstaben und Ziffern hinaus) und add_check_digit fügt dem Symbol eine Modulo-43-Prüfziffer hinzu.

from aspose_barcode_foss import Code39Options

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

EAN- und UPC-Prüfziffer-Optionen

Ean13Options, Ean8Options, UpcaOptions und UpceOptions unterstützen alle allow_check_digit_input. Standardmäßig berechnet die Bibliothek die Prüfziffer automatisch— geben Sie nur die Nutzdatenziffern an (12 für EAN-13, 7 für EAN-8, 11 für UPC-A). Setzen Sie allow_check_digit_input=True, um eine vorab berechnete Prüfziffer als Teil der Eingabe zu übergeben.

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 Nummernsystem

UpceOptions fügt eine number_system Eigenschaft hinzu. UPC-E Barcodes verwenden das Nummernsystem “0” oder “1”. Setzen Sie diese Eigenschaft, um zu steuern, welches Nummernsystem-Präfix der Encoder verwendet.

from aspose_barcode_foss import UpceOptions

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

Zusammenfassung der Optionen

SymbologyOptions ClassWichtige Eigenschaften
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

Siehe auch

 Deutsch