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


```python
import aspose_barcode_foss as barcode

# 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")

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

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


```python
import aspose_barcode_foss as barcode

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}")


```python
import aspose_barcode_foss as barcode

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}")

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

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>
import aspose_barcode_foss as barcode

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

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ă