Rad s opcijama za kodiranje
Rad s opcijama za kodiranje
Svaka barkodna simbolika u Aspose.BarCode FOSS za Python ima namjensku klasu opcija koja kontrolira ponašanje kodiranja. Sve klase opcije nasljeđuju od EncodeOptions, što omogućuje: gs1_enabled i u članku 1. eci_assignment_number svojstva koja su zajednička u simbolizma.
Code128Options
Code128Options Kod 128 je kod koji se koristi za određivanje karakteru. encode_mode imovina prihvaća Code128EncodeMode Enum vrijednost.
| Mode | Description |
|---|---|
AUTO | Automatski odabere najkompaktičniju kodiranje |
CODE_A | Velika slova, brojeve i kontrolni znakovi |
CODE_B | Velike, male i brojeve |
CODE_C | Brojke optimizirane za podatke koji se odnose samo na brojeve |
CODE_AB | Odjeljci iz točke (a) i (b) ovog članka: |
CODE_AC | Odjeljci iz točke (a) i (b) ovog članka. |
CODE_BC | Odjeljci iz točke (a) podtočke (b) i (c) |
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 Ako je to moguće, provjerite da li se koder koristi osnovni skup od 43 znakova ili proširenje Full ASCII.
| Property | Type | Default | Description |
|---|---|---|---|
full_ascii | bool | None | Aktivirati pun ASCII način (povijek od 128 znakova putem parova smjena) |
add_check_digit | bool | None | Pridružite kontrolnu brojku modulo-43 |
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),
)Opcije za ulaganje u kreditne institucije
QrOptions Ima najviše konfiguracije površine među svim simbolima.
| Property | Type | Values |
|---|---|---|
error_correction_level | QrErrorCorrectionLevel | L (7%), M (od 15%), Q (%), H 30%) |
encoding_mode | QrEncodeMode | AUTO, NUMERIC, ALPHANUMERIC, BYTE, KANJI |
version | int | 1–40 (controls symbol dimensions) |
mask | int | 0–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 Kontrolne jedinice za provjeru brojeva u EAN-13 barkodovima.
| Property | Type | Default | Description |
|---|---|---|---|
allow_check_digit_input | bool | None | Prihvaćanje ulaza od 13 znamenki s unaprijed izračunatom kontrolnom šipkom |
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 radi identično kao i Ean13Options Za 8 cifrenih EAN barkodova, isporučite 7 korisnih brojeva (biblioteka izračunava osmi) ili postavite: allow_check_digit_input=True za unos 8 znamenki.
from aspose_barcode_foss import Ean8Options
bc = barcode.ean8("1234567")
bc2 = barcode.ean8("12345670", encode=Ean8Options(allow_check_digit_input=True))Opcije za upcA i UpceOpcije
UpcaOptions i u članku 1. UpceOptions Slijedite istu. allow_check_digit_input U ovom slučaju, u skladu s člankom 21. stavkom 1. točka (a) Uredbe (EU) br. 575/2013. UpceOptions također ima i number_system imovina.
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),
)Opcije za kodiranje opcija:
Sve opcijske klase nasljeđuju ova svojstva od: EncodeOptions:
| Property | Type | Description |
|---|---|---|
gs1_enabled | `bool | None` |
eci_assignment_number | `int | None` |
Savjeti i najbolje prakse
- Upotreba:
Code128EncodeMode.AUTOAko nemate poseban razlog za ograničavanje skupova znakova, to će proizvesti najkraći barkod za bilo koji ulaz. - Sastavljeno
QrErrorCorrectionLevel.Hza QR kodove koji će biti ispisani na površinama koje su podložne oštećenju. - Neka knjižnica izračuna provjeriti brojeve podrazumevano samo postavljeno
allow_check_digit_input=TrueU slučaju da se u skladu s člankom 7. stavku 1. točka (a) i (b) ovog članka ne primjenjuje, Komisija može na temelju postupka provjere utvrđenih u Prilogu II. odjeljcima 2. i 3. poduzeti sljedeće mjere:. - Upotreba:
QrEncodeMode.NUMERICza QR podatke samo s brojevima kako bi se smanjila veličina simbola.
Zajednički problemi
| Issue | Cause | Popraviti |
|---|---|---|
InvalidInputError na oznaku 39 | Uvod sadrži male slova | Sastavljeno full_ascii=True u (v) Code39Options |
| QR kod je prevelik. | Verzija postavljena premalo za dužinu podataka | Uklanjanje izričito version ili je povećava. |
| Pogrešna kontrolna cifra na EAN-13 | 13-digit input without allow_check_digit_input=True | Predajte 12 cifara (auto) ili postavite opciju na True |
SymbologyNotFoundError | Pogrešno napisano ime u simbološkoj vrstici generate() | Koristite jednu od sljedećih opcija: code128, code39, ean13, ean8, qr, upca, upce |