Kenmerken en functionaliteiten

Kenmerken en functionaliteiten

Overzicht

Aspose.BarCode FOSS voor Python biedt een hoog-niveau API voor het genereren van zeven barcode-symbologieën met per-symbologie encode-opties en renderingsbesturingselementen. Deze pagina is de primaire referentie voor alle kenmerkgebieden.


Ondersteunde symbologieën

De bibliotheek ondersteunt zeven symbologieën via toegewijde hulpfuncties en het generieke generate() toegangspunt:

SymbologyTypeHelperOpties Klasse
Code 1281Dcode128()Code128Options
Code 391Dcode39()Code39Options
EAN-131Dean13()Ean13Options
EAN-81Dean8()Ean8Options
QR Code2Dqr()QrOptions
UPC-A1Dupca()UpcaOptions
UPC-E1Dupce()UpceOptions
import aspose_barcode_foss as barcode

# Per-symbology helpers
bc_128 = barcode.code128("ABC123")
bc_qr = barcode.qr("https://example.com")

# Generic API
bc_gen = barcode.generate("ean13", "590123412345")

Code 128 encodeermodi

Code128Options bepaalt welke Code 128 tekensets de encoder gebruikt. De eigenschap encode_mode accepteert een Code128EncodeMode enum-waarde:

  • AUTO — selecteert automatisch de meest compacte codering
  • CODE_A, CODE_B, CODE_C — beperk tot één karakterset
  • CODE_AB, CODE_AC, CODE_BC — sta toe om te schakelen tussen twee karaktersets
from aspose_barcode_foss import Code128Options, Code128EncodeMode

bc = barcode.code128(
    "1234567890",
    encode=Code128Options(encode_mode=Code128EncodeMode.CODE_C),
)

Code 39 Codering

Code39Options bepaalt of de encoder de basis 43-karakterset of de volledige ASCII-uitbreiding gebruikt:

  • full_ascii — stel in op True om het volledige 128-karakter ASCII-bereik te coderen met shift-paren
  • add_check_digit — voegt een modulo-43 controlecijfer toe
from aspose_barcode_foss import Code39Options

bc = barcode.code39(
    "Hello",
    encode=Code39Options(full_ascii=True, add_check_digit=True),
)

QR Code Configuratie

QrOptions biedt de meeste configuratie van alle symbologieën:

EigenschapTypeValues
error_correction_levelQrErrorCorrectionLevelL (7%), M (15%), Q (25%), H (30%)
encoding_modeQrEncodeModeAUTO, NUMERIC, ALPHANUMERIC, BYTE, KANJI
versionint1–40 (regelt de symboolgrootte)
maskint0–7 (handmatige maskerpatroonselectie)
from aspose_barcode_foss import QrOptions, QrErrorCorrectionLevel, QrEncodeMode

bc = barcode.qr(
    "https://example.com/product/12345",
    encode=QrOptions(
        error_correction_level=QrErrorCorrectionLevel.Q,
        encoding_mode=QrEncodeMode.BYTE,
    ),
)

EAN- en UPC-controlecijfers

Ean13Options, Ean8Options, UpcaOptions en UpceOptions hebben elk een allow_check_digit_input-eigenschap. Standaard berekent de bibliotheek het controlecijfer automatisch. Stel allow_check_digit_input=True in als uw gegevens dit al bevatten.

from aspose_barcode_foss import Ean13Options

# Automatic check digit (12 digits in, library appends the 13th)
bc = barcode.ean13("590123412345")

# Pre-computed check digit (13 digits, library validates)
bc2 = barcode.ean13(
    "5901234123457",
    encode=Ean13Options(allow_check_digit_input=True),
)

Renderingscontroles

RenderOptions is van toepassing op alle symbologieën en bepaalt de visuele output. Geef het door aan to_svg() of to_png():

EigenschapTypeBeschrijving
scalefloatUniforme schaalvermenigvuldiger
dpiintResolutie voor PNG-uitvoer
module_widthfloatBreedte van één barcode-module
module_heightfloatHoogte van één barcode-module
quiet_zonefloatWitruimtevulling rond de barcode
foreground_colorstrHex-kleur voor balken (bijv., "#000000")
background_colorstrHex-kleur voor achtergrond
transparent_backgroundboolTransparante achtergrond voor PNG
show_textboolToon menselijk leesbare tekst onder de barcode
font_familystrLettertype voor menselijk leesbare tekst
font_sizefloatLettergrootte voor menselijk leesbare tekst
from aspose_barcode_foss import RenderOptions

bc = barcode.upca("01234567890")
png = bc.to_png(options=RenderOptions(
    scale=3.0,
    dpi=300,
    foreground_color="#1a1a1a",
    background_color="#ffffff",
    show_text=True,
))

Uitvoerformaten

FormaatMethodeReturntype
SVGto_svg()str
PNGto_png()bytes

Beide methoden accepteren een optionele RenderOptions-parameter.


Foutafhandeling

Alle validatie van encode-opties gebeurt tijdens het parseren. De bibliotheek werpt getypeerde uitzonderingen voordat de codering begint:

ExceptionWanneer opgegooid
InvalidInputErrorGegevens bevatten tekens die niet worden ondersteund door de symbologie
EncodingErrorCodering mislukt (bijv., gegevens overschrijden de capaciteit)
SymbologyNotFoundErrorOnherkende symbologienaam doorgegeven aan generate()
UnsupportedCapabilityErrorAangevraagde functie niet beschikbaar voor deze symbologie

Alle exceptieklassen erven van BarcodeError.

from aspose_barcode_foss import InvalidInputError

try:
    bc = barcode.ean13("ABC")
except InvalidInputError as e:
    print(f"Invalid input: {e}")

Invoervalidatie

Elke symbologie heeft een toegewijde InputParser die gegevens valideert vóór het coderen. De parser controleert de tekenset, lengte en formaatvereisten die specifiek zijn voor elke symbologie. Code128InputParser, Code39InputParser, Ean13InputParser, Ean8InputParser, QrInputParser, UpcaInputParser en UpceInputParser worden intern gebruikt door hun respectieve hulpfuncties.


Barcode-object

Het Barcode object dat door alle helper-functies wordt geretourneerd, biedt:

  • to_svg(options) — renderen naar SVG-string
  • to_png(options) — renderen naar PNG-bytes
  • render(renderer, options) — renderen met een specifieke Renderer implementatie
  • symbol — de EncodedSymbol die de modulematrix en metadata bevat
  • profile — de SymbologyProfile met standaardinstellingen en mogelijkheden

API Reference Samenvatting

KlasseBeschrijving
BarcodeOpenbaar barcode-object met to_svg() en to_png()
Code128OptionsCoderingsopties voor Code 128 (encode_mode)
Code39OptionsCoderingsopties voor Code 39 (full_ascii, add_check_digit)
QrOptionsCoderingsopties voor QR Code (error_correction_level, encoding_mode, version, mask)
Ean13OptionsCoderingsopties voor EAN-13 (allow_check_digit_input)
Ean8OptionsCoderingsopties voor EAN-8 (allow_check_digit_input)
UpcaOptionsCoderingsopties voor UPC-A (allow_check_digit_input)
UpceOptionsCoderingsopties voor UPC-E (allow_check_digit_input, number_system)
RenderOptionsVisuele uitvoercontroles (schaal, DPI, kleuren, tekst)
EncodeOptionsBasistype voor symbologie-specifieke coderingsopties
BarcodeErrorBasisuitzondering voor de barcodebibliotheek

Zie ook

 Nederlands