Výběr symbologie čárového kódu

Výběr symbologie čárového kódu

Výběr symbologie čárových kódů

Aspose.BarCode FOSS pro Python podporuje sedm symbologií. Každá je vhodná pro různé typy dat, skenovací prostředí a průmyslové standardy. Tento průvodce popisuje vlastnosti každé symbologie a kdy ji použít.


Přehled symbologií

SymbologyTyp:Sada znakůKapacita datKontrolní číslice
Code 1281DPlný ASCII (128 znaků)Proměnná délkaAutomatické (mod-103)
Code 391DA–Z, 0–9 a 7 speciálních znaků (základ); plný ASCII (rozšířený)Proměnná délkaOptional
EAN-131DPouze číselné (0–9)12 datových číslic + 1 kontrolní čísliceAutomatic
EAN-81DPouze číselné (0–9)7 datových číslic + 1 kontrolní čísliceAutomatic
QR Code2DČíselné, alfanumerické, bajtové a KanjiAž 7,089 číselných / 4,296 alfanumerickýchAutomatické (Reed-Solomon)
UPC-A1DPouze číselné (0–9)11 datových číslic + 1 kontrolní čísliceAutomatic
UPC-E1DPouze číselné (0–9)6 datových číslic (komprimováno UPC-A)Automatic

Code 128

Code 128 kóduje kompletní sadu znaků ASCII s vysokou hustotou. Používá tři znakové sady (A, B, C) a přepíná mezi nimi automaticky v režimu AUTO.

Nejvhodnější pro: inventární štítky, přepravní štítky, obecná alfanumerická data.

from aspose_barcode_foss import BarcodeService
from aspose_barcode_foss import Code128Options, Code128EncodeMode

service = BarcodeService()

# Auto mode — library selects optimal character sets
barcode = service.generate("code128", "INV-2026-00451")

# Force Code C for all-numeric data (higher density)
barcode = service.generate(
    "code128", "123456789012",
    encode=Code128Options(encode_mode=Code128EncodeMode.CODE_C),
)
svg = barcode.to_svg()

Code 39

Code 39 podporuje velká písmena, číslice a 7 speciálních znaků v základním režimu. Aktivujte full_ascii=True pro kódování celého rozsahu ASCII. Volitelnou kontrolní číslici lze přidat pomocí add_check_digit.

Nejvhodnější pro: průmyslové štítky, vládní/vojenské identifikátory (LOGMARS) a prostředí, kde je důležitější jednoduchost než hustota.

from aspose_barcode_foss import BarcodeService
from aspose_barcode_foss import Code39Options

service = BarcodeService()

# Base mode — uppercase + digits + special chars
barcode = service.generate("code39", "PART-A1234")

# Full ASCII mode with check digit
barcode = service.generate(
    "code39", "Part-a1234",
    encode=Code39Options(full_ascii=True, add_check_digit=True),
)
svg = barcode.to_svg()

EAN-13

EAN-13 je standardní čárový kód pro maloobchodní produkty mimo Severní Ameriku. Kóduje přesně 12 datových číslic; 13. číslice je kontrolní číslice vypočítaná automaticky. Použijte Ean13Options pro řízení chování vstupu kontrolní číslice.

Nejvhodnější pro: identifikaci maloobchodních produktů, položky mezinárodního obchodu (GTIN-13).

from aspose_barcode_foss import BarcodeService
from aspose_barcode_foss import Ean13Options

service = BarcodeService()

# 12 data digits — check digit computed
barcode = service.generate("ean13", "590123412345")

# With rendering options for human-readable text
from aspose_barcode_foss import RenderOptions
svg = barcode.to_svg(RenderOptions(show_text=True, scale=2.0))

EAN-8

EAN-8 je kompaktní verze EAN-13, používaná na malých maloobchodních baleních, kde je omezený prostor. Kóduje 7 datových číslic a 1 kontrolní číslici.

Nejvhodnější pro: malé maloobchodní produkty, položky s omezeným prostorem na štítku.

from aspose_barcode_foss import BarcodeService

service = BarcodeService()
barcode = service.generate("ean8", "9638507")
svg = barcode.to_svg()

QR Code

QR Code je 2D matice symbologie, která ukládá velké množství dat na malém prostoru. Podporuje čtyři režimy kódování prostřednictvím QrEncodeMode: NUMERIC, ALPHANUMERIC, BYTE a KANJI. Oprava chyb je nastavitelná pomocí QrErrorCorrectionLevel (L, M, Q, H).

Nejvhodnější pro: URL adresy, mobilní aplikace, marketingové materiály a jakýkoli případ použití vyžadující vysokou kapacitu dat nebo ne-ASCII znaky.

from aspose_barcode_foss import BarcodeService
from aspose_barcode_foss import QrOptions, QrErrorCorrectionLevel, QrEncodeMode

service = BarcodeService()

# Default settings
barcode = service.generate("qrcode", "https://example.com")

# High error correction for printed labels
barcode = service.generate(
    "qrcode", "https://example.com/product/12345",
    encode=QrOptions(
        error_correction_level=QrErrorCorrectionLevel.H,
        encoding_mode=QrEncodeMode.BYTE,
    ),
)
png = barcode.to_png()

UPC-A

UPC-A je standardní čárový kód pro maloobchodní produkty v Severní Americe. Kóduje 11 datových číslic plus 1 kontrolní číslici. UPC-A je podmnožinou EAN-13 s úvodní nulou.

Nejvhodnější pro: identifikaci maloobchodních produktů v Severní Americe (GTIN-12).

from aspose_barcode_foss import BarcodeService

service = BarcodeService()
barcode = service.generate("upca", "01234567890")
svg = barcode.to_svg()

UPC-E

UPC-E je komprimovaná forma UPC-A pro malé maloobchodní položky. Kóduje 6 datových číslic potlačením nul z úplné reprezentace UPC-A.

Nejvhodnější pro: malé maloobchodní předměty, kupóny a štítky, kde je místo omezené.

from aspose_barcode_foss import BarcodeService

service = BarcodeService()
barcode = service.generate("upce", "0123456")
svg = barcode.to_svg()

Rozhodovací průvodce

Použijte tuto tabulku k výběru správné symbologie pro vaši aplikaci:

Případ užitíDoporučená symbolikaReason
Skladové zásobyCode 128Plný ASCII, vysoká hustota, proměnná délka
Vojenské/LOGMARS štítkyCode 39Široké přijetí ve vládních systémech
Mezinárodní maloobchodEAN-13GTIN-13 standard
Malé maloobchodní baleníEAN-8 nebo UPC-EKompaktní fyzická velikost
Severoamerický maloobchodUPC-AGTIN-12 standard
URL adresy a mobilní odkazyQR CodeVysoká kapacita, 2D skenování
Marketing a tiskQR CodeSkenovatelné telefonními kamerami
Číselná sériová číslaCode 128 (Code C)Nejvyšší hustota číselných dat

Tipy a osvědčené postupy

  • Použijte Code 128 jako výchozí pro univerzální štítky — nabízí nejlepší poměr hustoty k kompatibilitě mezi 1D symbologiemi
  • Pro maloobchodní produkty použijte symbologii požadovanou vaším trhem: EAN-13 pro mezinárodní, UPC-A pro Severní Ameriku
  • Nastavte QrErrorCorrectionLevel.H pro kódy QR, které budou tištěny na štítcích vystavených opotřebení nebo částečnému poškození
  • Vždy nechte knihovnu vypočítat kontrolní číslice automaticky místo jejich ručního zadávání
  • Použijte show_text=True v RenderOptions pro čitelné štítky, aby operátoři mohli vizuálně ověřovat naskenovaná data

Běžné problémy

ProblémPříčinaOpravit
InvalidInputError na EAN-13Nenumerické znaky v datechEAN-13 přijímá pouze číslice 0–9
InvalidInputError na Code 39Malá písmena v základním režimuNastavit Code39Options(full_ascii=True)
QR code je příliš velkýVerze je příliš nízká pro délku datNechte knihovnu automaticky vybrat verzi, nebo zvyšte QrOptions.version
UPC-E InvalidInputErrorData neodpovídají vzoru potlačení nulOvěřte 6-místný formát UPC-E nebo použijte UPC-A

FAQ

Mohu použít Code 128 pro čistě číselná data?

Ano. Code 128 Code C mode (Code128EncodeMode.CODE_C) je optimalizován pro čistě číselná data, kóduje dvojice číslic v jednom symbolu pro maximální hustotu.

Jaký je rozdíl mezi EAN-13 a UPC-A?

UPC-A je 12-ciferná podmnožina EAN-13. Kód UPC-A může být vyjádřen jako EAN-13 s úvodní nulou. Jsou funkčně kompatibilní v maloobchodních skenovacích systémech.

Která symbologie podporuje nejvíce dat?

QR Code podporuje až 7089 číselných znaků nebo 4296 alfanumerických znaků. Všechny 1D symbologie v této knihovně podporují data proměnné délky, ale QR Code má nejvyšší kapacitu.

Mohu v jedné aplikaci kombinovat symbologie?

Ano. Vytvořte jednu instanci BarcodeService a zavolejte generate() s různými názvy symbologií pro každý čárový kód. Služba rozpozná každou symbologii pomocí SymbologyRegistry.


API Reference Shrnutí

Třída / MetodaPopis:
BarcodeService.generate(symbology, data, encode, render)Vygenerujte čárový kód pro libovolnou registrovanou symbologii
Code128OptionsMožnosti kódování pro Code 128 (režim kódování, GS1, ECI)
Code128EncodeModeEnum: AUTO, CODE_A, CODE_B, CODE_C, CODE_AB, CODE_AC, CODE_BC
Code39OptionsMožnosti kódování pro Code 39 (plné ASCII, kontrolní číslice)
Code39EncodeModeEnum: BASE, FULL_ASCII
Ean13OptionsMožnosti kódování pro EAN-13 (vstup kontrolní číslice)
Ean8OptionsMožnosti kódování pro EAN-8 (vstup kontrolní číslice)
QrOptionsMožnosti kódování pro QR Code (oprava chyb, verze, maska, režim)
QrEncodeModeVýčet: AUTO, NUMERIC, ALPHANUMERIC, BYTE, KANJI
QrErrorCorrectionLevelVýčet: L, M, Q, H
UpcaOptionsMožnosti kódování pro UPC-A
UpceOptionsMožnosti kódování pro UPC-E
SymbologyRegistryŘeší názvy symboliky a poskytuje definice

Viz také:

 Čeština