A kódolási lehetőségekkel való munka

A kódolási lehetőségekkel való munka

A kódolási lehetőségekkel való munka

Az Aspose.BarCode FOSS Python-ban minden egyes vonalkód jelképe egy dedikált opcióosztályt tartalmaz, amely a kódolási viselkedést irányítja. Minden opciós osztály örököl az alábbiakból: EncodeOptions, amely a következőket írja elő: gs1_enabled és a következők: eci_assignment_number A szimbólumok között megosztott tulajdonságok.


Code128Options

Code128Options A kódoló kijelöli, hogy melyik 128 karaktert állítja be. encode_mode Az ingatlan elfogadja a Code128EncodeMode enum érték.

ModeDescription
AUTOAutomatikusan kiválasztja a legkompaktabb kódolást.
CODE_ANagybetű, számjegy és vezérlőjelző
CODE_BNagybetű, kisbető és számjegyek
CODE_CSzámjegy-párok optimalizált csak számszerű adatokhoz
CODE_ABA kódok közötti átváltás
CODE_ACA kódok közötti váltás
CODE_BCA B és C kódok közötti átváltás
import aspose_barcode_foss as barcode
from aspose_barcode_foss import Code128Options, Code128EncodeMode

# AUTO mode — library picks the most compact encoding
bc_auto = barcode.code128("ABC123", encode=Code128Options(encode_mode=Code128EncodeMode.AUTO))

# CODE_C mode — compact encoding for digit-only data
bc_c = barcode.code128("9876543210", encode=Code128Options(encode_mode=Code128EncodeMode.CODE_C))

# CODE_B mode — full alphanumeric support
bc_b = barcode.code128("Hello World", encode=Code128Options(encode_mode=Code128EncodeMode.CODE_B))

Code39Options

Code39Options ellenőrzi, hogy a kódoló használja-e az alap 43 karakterkészletet vagy a Full ASCII kiterjesztést.

PropertyTypeDefaultDescription
full_asciiboolNoneTeljes ASCII mód (128 karaktertartomány váltási párok segítségével) aktiválása
add_check_digitboolNoneA modulo-43 ellenőrző számjegy hozzáadása.
from aspose_barcode_foss import Code39Options

# Base mode — uppercase letters, digits, and a few special characters
bc_base = barcode.code39("CODE 39")

# Full ASCII mode — encodes the full 128-character ASCII range
bc_full = barcode.code39(
    "Hello, World!",
    encode=Code39Options(full_ascii=True, add_check_digit=True),
)

QrOpciók

QrOptions A legtöbb szimbólummal rendelkező felület.

PropertyTypeValues
error_correction_levelQrErrorCorrectionLevelL (7%), M (15%), Q (25%), H (30%)
encoding_modeQrEncodeModeAUTO, NUMERIC, ALPHANUMERIC, BYTE, KANJI
versionint1–40 (controls symbol dimensions)
maskint0–7 (manual mask pattern selection)
from aspose_barcode_foss import QrOptions, QrErrorCorrectionLevel, QrEncodeMode

# High error correction with byte encoding
bc = barcode.qr(
    "https://example.com",
    encode=QrOptions(
        error_correction_level=QrErrorCorrectionLevel.H,
        encoding_mode=QrEncodeMode.BYTE,
    ),
)

# Numeric mode for digit-only data — most compact QR
bc_num = barcode.qr(
    "0123456789",
    encode=QrOptions(encoding_mode=QrEncodeMode.NUMERIC),
)

# Explicit version and mask
bc_v5 = barcode.qr(
    "TEST",
    encode=QrOptions(version=5, mask=3),
)

Ean13Options

Ean13Options az EAN-13 vonalkódok ellenőrző számjegy kezelésének irányítása.

PropertyTypeDefaultDescription
allow_check_digit_inputboolNoneElfogadja a 13 számjegyű bevitel előzetes számítási ellenőrzési számegységgel
from aspose_barcode_foss import Ean13Options

# 12 digits — library computes the 13th check digit
bc = barcode.ean13("590123412345")

# 13 digits — library validates the provided check digit
bc2 = barcode.ean13(
    "5901234123457",
    encode=Ean13Options(allow_check_digit_input=True),
)

Ean8Options

Ean8Options azonos módon működik, mint a Ean13Options A rendszer nem tartalmaz 8 digitus EAN-s vonalkódot, hanem egy 8-as számjegyű EAD-t. 7 hasznos teherszámjegy (a könyvtár a 8. számításra kerül), vagy beállított allow_check_digit_input=True 8 számjegyű bevitelhez.

from aspose_barcode_foss import Ean8Options

bc = barcode.ean8("1234567")
bc2 = barcode.ean8("12345670", encode=Ean8Options(allow_check_digit_input=True))

A felfelé és a feljebbinduló opciók

UpcaOptions és a következők: UpceOptions Ugyanazt kövesd. allow_check_digit_input mint az EAN-opciók. UpceOptions A number_system tulajdon.

from aspose_barcode_foss import UpcaOptions, UpceOptions

# UPC-A: 11 digits, library adds check digit
bc_a = barcode.upca("01234567890")

# UPC-E with pre-computed check digit
bc_e = barcode.upce(
    "01234565",
    encode=UpceOptions(allow_check_digit_input=True),
)

EncodeOptions alap tulajdonságai

Minden opciós osztály örökli ezeket a tulajdonságokat az alábbiakból: EncodeOptions:

PropertyTypeDescription
gs1_enabled`boolNone`
eci_assignment_number`intNone`

Tippek és legjobb gyakorlatok

  • Használat Code128EncodeMode.AUTO Hacsak nincs konkrét okod a karakterkészletek korlátozására akkor minden bevitelnél a legrövidebb vonalkódot hozza létre.
  • Összeállítva QrErrorCorrectionLevel.H a károsodásra hajlamos felületeken nyomtatandó QR-kódok esetében.
  • A könyvtár számításai csak beállítva. allow_check_digit_input=True egy másik rendszerből előzetesen érvényesített adatok átvételénél.
  • Használat QrEncodeMode.NUMERIC a szimbólum méretének minimalizálása érdekében csak számjegyű QR-adatok esetében.

Általános kérdések

IssueCauseMegjavítani.
InvalidInputError a 39-es kódrólA bevitelben kisebb betűk vannak.Összeállítva full_ascii=True a következőkben: Code39Options
QR kód túl nagyA változat túl alacsony az adathosszhozA kifejezett eltávolítása version vagy növelni.
Helytelen ellenőrzési számjegy az EAN-13-en.13-digit input without allow_check_digit_input=True12 számjegy (automatikus) vagy állítsa be a lehetőséget, hogy True
SymbologyNotFoundErrorA jelképes név betűje helytelenül szerepel a következőben: generate()Használjon az alábbiak közül egyet: code128, code39, ean13, ean8, qr, upca, upce

See Also

 Magyar