Cum să generați coduri de bare cu Aspose.BarCode FOSS

Cum să generați coduri de bare cu Aspose.BarCode FOSS

Problem

Generați coduri de bare 1D și 2D din șirurile de date folosind Aspose.BarCode FOSS pentru Python. Biblioteca oferă funcții ajutatoare per-simbologie (code128(), qr(), ean13(), etc.) şi un generic de medicamente. generate() funcție care acceptă un nume de simbol.

import aspose_barcode_foss as barcode

bc = barcode.code128("Hello World")
svg = bc.to_svg()

Prerequisites

  • Python 3.12 sau mai recentă
  • manager de pachete pip
  • aspose-barcode-foss instalată prin intermediul: pip install aspose-barcode-foss

Folosirea ajutoarelor per-simbolice

Fiecare simbolologie suportată are o funcție de ajutor dedicat care returnează un Barcode Obiectul. Ajutorul validează intrarea și selectează codificatorul corect automat.

1D barcodes

bc_128 = barcode.code128(“ABC-123”) bc_39 = barcode.code39(“HELLO”) bc_ean13 = barcode.ean13(“590123412345”) bc_ean8 = barcode.ean8(“1234567”) bc_upca = barcode.upca(“01234567890”) bc_upce = barcode.upce(“012345”)

2D barcode

bc_qr = barcode.qr(“https://example.com”)


## Folosirea funcției generatoare generice

În ceea ce priveşte `generate()` funcția acceptă un șir de nume simbol ca prim argument. Acest lucru este util atunci când simbolia este determinată la runtime.

bc = barcode.generate("code128", "Dynamic data")
svg = bc.to_svg()

# Also works with other symbology names
bc_qr = barcode.generate("qr", "https://example.com")
bc_ean = barcode.generate("ean13", "590123412345")

<button class=“hextra-code-copy-btn hx-group/copybtn hx-transition-all active:hx-opacity-50 hx-bg-primary-700/5 hx-border hx-border-black/5 hx-text-gray-600 hover:hx-text-gray-900 hx-rounded-md hx-p-1.5 dark:hx-bg-primary-300/10 dark:hx-border-white/10 dark:hx-text-gray-400 dark:hover:hx-text-gray-50” title=“Copiază codul”

<div class="copy-icon group-[.copied]/copybtn:hx-hidden hx-pointer-events-none hx-h-4 hx-w-4"></div>
<div class="success-icon hx-hidden group-[.copied]/copybtn:hx-block hx-pointer-events-none hx-h-4 hx-w-4"></div>

Combinarea generației cu opțiunile de codificare

Treci un pas. encode parametru de control al opțiunilor specifice simbologiei în timpul generării.

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.Q),
)
svg = bc.to_svg()

Citirea simbolului codificat

În ceea ce priveşte Barcode Obiectul expune o symbol proprietate de tip EncodedSymbol, care conţine: matrix (a) ModuleMatrix cu rețeaua de module) și metadata (a) SymbolMetadata cu numele de simbol, textul afișat și datele normalizate).

bc = barcode.code128(“Test”) symbol = bc.symbol

Access the module matrix

print(f"Width: {symbol.matrix.width}") print(f"Height: {symbol.matrix.height}")

Access symbol metadata

print(f"Symbology: {symbol.metadata.symbology}") print(f"Display text: {symbol.metadata.display_text}")


## Salvarea producţiei

După generarea unui `Barcode`, sună-mă . `to_svg()` pentru un șir SVG sau `to_png()` Scrie rezultatul într-un fişier.

bc = barcode.code128("SAVE-ME")

# Save as SVG
with open("barcode.svg", "w") as f:
    f.write(bc.to_svg())

# Save as PNG
with open("barcode.png", "wb") as f:
    f.write(bc.to_png())

<button class=“hextra-code-copy-btn hx-group/copybtn hx-transition-all active:hx-opacity-50 hx-bg-primary-700/5 hx-border hx-border-black/5 hx-text-gray-600 hover:hx-text-gray-900 hx-rounded-md hx-p-1.5 dark:hx-bg-primary-300/10 dark:hx-border-white/10 dark:hx-text-gray-400 dark:hover:hx-text-gray-50” title=“Copiază codul”

<div class="copy-icon group-[.copied]/copybtn:hx-hidden hx-pointer-events-none hx-h-4 hx-w-4"></div>
<div class="success-icon hx-hidden group-[.copied]/copybtn:hx-block hx-pointer-events-none hx-h-4 hx-w-4"></div>

Simboluri susținute

SymbologyTypeFuncţie de ajutorClasificarea opțiunilor
Codul 1281Dcode128()Code128Options
Codul 391Dcode39()Code39Options
EAN-131Dean13()Ean13Options
EAN-81Dean8()Ean8Options
Cod QR2Dqr()QrOptions
UPC-A1Dupca()UpcaOptions
UPC-E1Dupce()UpceOptions

See Also

 Română