1. Produkter
  2.   Aspose.BarCode
  3.   Aspose.BarCode FOSS for Python

Aspose.BarCode FOSS for Python

Öppen källkod Python-bibliotek för att generera standardkompatibla 1D- och 2D-streckkoder. MIT-licensierat, ren Python, renderar till SVG och PNG.

Python-bibliotek för generering av streckkoder med öppen källkälla

Aspose.BarCode FOSS för Python är ett gratis, öppen källkod-bibliotek för att generera standardkompatibla streckkoder i ren Python. Installera det med pip install aspose-barcode-foss och börja skapa Code 128, Code 39, EAN-13, EAN-8, QR Code, UPC-A och UPC-E streckkoder. Varje streckkod renderas direkt till SVG eller PNG utan inhemska beroenden.

Biblioteket exponerar en högnivå generate() funktion och per‑symbolik‑hjälpare såsom barcode.code128(), barcode.qr() och barcode.ean13(). Varje anrop returnerar ett Barcode objekt med .to_svg() och .to_png() metoder för omedelbar utmatning. Renderingsalternativ inklusive skala, DPI, modul‑dimensioner, färger, tyst zon och synlighet för mänskligt läsbar text styrs via RenderOptions.

Eftersom biblioteket är ren Python utan inhemska Office- eller bildbehandlingsberoenden, kör det identiskt på Windows, Linux och macOS, inklusive Docker‑behållare och CI‑körningar. Källkoden är licensierad under MIT och hostas på GitHub. För företagsfunktioner och support, se Aspose.BarCode for Python — Enterprise Product.

Barkodgenerering

  • Sju symbologier: Code 128, Code 39, EAN-13, EAN-8, QR Code, UPC-A och UPC-E.
  • Hög nivå API: Anropa barcode.generate("code128", "data") för att skapa någon stödjande streckkod efter namn.
  • Dedikerade hjälpare: Använd barcode.code128(), barcode.qr(), barcode.ean13(), barcode.ean8(), barcode.upca() och barcode.upce() för typ‑säker generering.
  • Kodningsalternativ: Styr kodningsläge, kontrollsiffror, felkorrigeringsnivå och GS1 via Code128Options, Code39Options, QrOptions och symbologi‑specifika alternativklasser.
  • Automatiska kontrollsiffror: EAN-13, EAN-8, UPC-A och UPC-E beräknar kontrollsiffror automatiskt från datasträngen.

Var Aspose.BarCode kan användas för fosser

  • ** Produktmärkning:** Generera EAN-13 och UPC-A streckkoder för detaljhandelsförpackningar.
  • ** Inventarhantering:** Skapa kod 128 etiketter för lager- och logistikarbete.
  • QR-kodkampanjer: Skapa QR-koder för marknadsföringsmaterial, evenemangsbiljetter och mobila länkar.
  • Fartyg och logistik: Generera kod 39 och barkod 128 för etiketter som spårar leveranser.

Rendering och produktion

  • SVG-utdata: Anropa barcode.to_svg() för att få en standardkompatibel SVG-sträng.
  • PNG-utdata: Anropa barcode.to_png() för att få PNG-bildbytes.
  • RenderOptions: Styr scale, dpi, module_width, module_height, quiet_zone, foreground_color, background_color, transparent_background, show_text, font_family och font_size.
  • Mänskligt läsbar text: Symbologi‑specifika TextLayoutPolicy-implementationer hanterar textplacering under varje streckkodstyp.
  • Renderer‑arkitektur: PngRenderer och SvgRenderer implementerar Renderer-gränssnittet för utbyggbar utdata.

Utvecklarexpertis

Aspose.BarCode FOSS kan installeras med pip install aspose-barcode-foss. Det finns inga inhemska bibliotek eller systempaket att installera. Biblioteket kräver Python 3.12 eller senare.

API är byggd kring Barcode, EncodeOptions, RenderOptions och SymbologyRegistry, och täcker hela generering‑till‑renderings‑pipeline. Varje symbologi definieras av en SymbologyDefinition som samlar en parser, kodare, profil och textlayoutpolicy. Källkoden är MIT-licensierad, hostad på GitHub och tar emot bidrag.

Symbolkonfiguration

  • Code 128 lägen: Välj AUTO, CODE_A, CODE_B, CODE_C eller blandade lägen via Code128EncodeMode.
  • Code 39 lägen: Välj BASE eller FULL_ASCII kodning med valfri kontrollsiffra via Code39Options.
  • QR alternativ: Ställ in error_correction_level (L, M, Q, H), version, mask och encoding_mode (AUTO, NUMERIC, ALPHANUMERIC, BYTE, KANJI) via QrOptions.
  • Registreringssystem: SymbologyRegistry lagrar alla definitioner och löser upp symbologier efter kanoniskt namn eller alias.
  • Profilmetadata: Varje symbologis SymbologyProfile tillhandahåller standardvärden, funktioner, specifikationsreferenser och kända begränsningar.

Felhantering

  • Typade undantag: BarcodeError är basen, med EncodingError, RenderingError,InvalidInputError , SymbologyNotFoundError och UnsupportedFeatureError.
  • Input validering: Varje InputParser validerar data innan kodning, fånga ogiltiga tecken och format överträdelser tidigt.
  • Förmågaskontroll: Om det inte finns någon stödbar funktion (t.ex. binärinmatning för kod 39) visas UnsupportedCapabilityError med ett beskrivande meddelande.

Generera en streckkod 128

Skapa en streckkod för kod 128 med funktionen generate() på hög nivå och gör den till SVG.

import aspose_barcode_foss as barcode
bc = barcode.generate("code128", "Hello World")
svg_string = bc.to_svg()
print(svg_string[:80])

Skapa en QR-kod med anpassade alternativ

Generera en QR-kod med specifik felkorrigering och gör den till PNG-byte.

import aspose_barcode_foss as barcode
from aspose_barcode_foss import QrOptions, QrErrorCorrectionLevel
bc = barcode.qr("https://example.com", options=QrOptions(
    error_correction_level=QrErrorCorrectionLevel.H
))
png_bytes = bc.to_png()
with open("qr.png", "wb") as f:
    f.write(png_bytes)

Rendering med anpassat utseende

Använd RenderOptions för att styra skala, färger och tyst zon för någon streckkod.

import aspose_barcode_foss as barcode
from aspose_barcode_foss import RenderOptions
bc = barcode.ean13("590123412345")
svg = bc.to_svg(options=RenderOptions(
    scale=2.0,
    foreground_color="#003366",
    quiet_zone=10.0,
    show_text=True
))

Vanliga Frågor

Vilken licens använder Aspose.BarCode FOSS för Python?

Biblioteket är släppt under MIT-licensen. Du kan använda, ändra och distribuera det i både öppna källkods- och kommersiella projekt utan royalties.

Vilka streckkodsymboler stöds?

Biblioteket stöder sju symboler Kod 128, Kod 39, EAN-13, E AN-8, QR-kod, UPC-A och U PC-E.

Vilka utgångsformat finns tillgängliga?

Stängkoder görs till SVG via to_svg() och PNG viato_png(). Metoden to_pdf() finns i API men ger upphov till NotImplementedError i den aktuella versionen.

Hur installerar jag Aspose.BarCode FOSS för Python?

Utför pip install aspose-barcode-foss. Biblioteket kräver Python 3.12 eller senare. Det är rent Python utan inbyggda beroenden.

Kan jag styra utseendet på streckkoden?

Ja. Ge ett objekt RenderOptions till to_svg() eller to_png() för att styra skala, DPI, moduldimensioner, färger, tyst zon och läsbar text.

Vilka Python-versioner stöds?

Aspose.BarCode FOSS kräver Python 3.12 eller senare. Det är ren Python utan inhemska eller C-extension-beroenden.

Kan jag generera streckkoder i batch?

Ja. Skapa en enda BarcodeService-instans och anropa generate() i en loop för varje datavärde. Varje anrop returnerar ett Barcode-objekt som du renderar oberoende med to_svg() eller to_png().

Hur konfigurerar jag kodningsalternativ per-symbol?

Skicka ett symbologi‑specifikt alternativobjekt (t.ex. Code128Options, QrOptions, Ean13Options) som encode-parametern till BarcodeService.generate(). Varje alternativklass exponerar egenskaper som är specifika för den symbologin, såsom encode_mode för Code 128 eller error_correction_level för QR Code.

  

Stöd och Lärande Resurser

 Svenska