Εισαγωγή

Aspose.BarCode FOSS για Python δημιουργεί barcode σε επτά συμβολισμούς και τα αποδίδει σε SVG και PNG. Αυτή η ανάρτηση εστιάζει στη διαδικασία απόδοσης — πώς να ελέγξετε τη μορφή εξόδου, τις διαστάσεις, τα χρώματα και το κείμενο που διαβάζεται από άνθρωπο χρησιμοποιώντας τα RenderOptions, SvgRenderer και PngRenderer.

Η βιβλιοθήκη είναι διαθέσιμη στο PyPI ως aspose-barcode-foss, κυκλοφορεί υπό την άδεια MIT χωρίς εγγενείς εξαρτήσεις. Κάθε αντικείμενο barcode εκθέτει τις μεθόδους to_svg() και to_png() για ευκολία, καθώς και μια χαμηλότερου επιπέδου μέθοδο render() που δέχεται οποιαδήποτε υλοποίηση Renderer.


Κύρια Χαρακτηριστικά

Έξοδος SVG με SvgRenderer

SvgRenderer παράγει markup SVG ανεξάρτητο από την ανάλυση. Η μέθοδος Barcode.to_svg() είναι μια συντόμευση που χρησιμοποιεί εσωτερικά το SvgRenderer.

from aspose_barcode_foss import BarcodeService, RenderOptions
from aspose_barcode_foss.rendering import SvgRenderer

service = BarcodeService()
barcode = service.generate("code128", "RENDER-TEST-001")

# Direct convenience method
svg_string = barcode.to_svg(RenderOptions(scale=2.0))

# Explicit renderer usage
renderer = SvgRenderer()
result = barcode.render(renderer, RenderOptions(scale=2.0, show_text=True))

Έξοδος PNG με PngRenderer

PngRenderer δημιουργεί εικόνες raster PNG. Ελέγξτε την ανάλυση με την ιδιότητα dpi στο RenderOptions. Η μέθοδος Barcode.to_png() είναι η βολική συντόμευση.

from aspose_barcode_foss import BarcodeService, RenderOptions
from aspose_barcode_foss.rendering import PngRenderer

service = BarcodeService()
barcode = service.generate("ean13", "590123412345")

# Convenience method — returns bytes
png_bytes = barcode.to_png(RenderOptions(dpi=300, scale=3.0))

with open("barcode.png", "wb") as f:
    f.write(png_bytes)

Έλεγχος κλίμακας και DPI

RenderOptions παρέχει το scale (πολλαπλασιαστής για τις διαστάσεις των μονάδων) και το dpi (dots per inch για την raster έξοδο). Αυτά λειτουργούν μαζί: το scale επηρεάζει το λογικό μέγεθος των γραμμών και των κενών, ενώ το dpi ελέγχει την πυκνότητα των pixel στην έξοδο PNG.

from aspose_barcode_foss import RenderOptions

# High-resolution print label
print_options = RenderOptions(scale=4.0, dpi=600)

# Screen display
screen_options = RenderOptions(scale=1.0, dpi=96)

Χρώματα και φόντο

Ορίστε τα foreground_color και background_color ως συμβολοσειρές χρώματος CSS. Ενεργοποιήστε το transparent_background για να παραλείψετε το γέμισμα φόντου (χρήσιμο για επικάλυψη σε υπάρχοντα σχέδια).

from aspose_barcode_foss import BarcodeService, RenderOptions

service = BarcodeService()
barcode = service.generate("qrcode", "https://example.com")

options = RenderOptions(
    foreground_color="#003366",
    background_color="#FFFFFF",
    scale=3.0,
)
svg = barcode.to_svg(options)

Έλεγχος ήσυχης ζώνης

Η ιδιότητα quiet_zone ορίζει το κενό περιθώριο γύρω από τον barcode σε μονάδες πλάτους μονάδας. Τα περισσότερα πρότυπα barcode απαιτούν ελάχιστη ήσυχη ζώνη για αξιόπιστη σάρωση.

from aspose_barcode_foss import BarcodeService, RenderOptions

service = BarcodeService()
barcode = service.generate("code39", "QUIET-ZONE")

# Wider quiet zone for print use
options = RenderOptions(quiet_zone=10.0, scale=2.0)
svg = barcode.to_svg(options)

Κείμενο αναγνώσιμο από άνθρωπο

Ορίστε το show_text=True ώστε να εμφανίζει τα κωδικοποιημένα δεδομένα κάτω από τον barcode. Οι ιδιότητες font_family και font_size ελέγχουν την εμφάνιση του κειμένου.

from aspose_barcode_foss import BarcodeService, RenderOptions

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

options = RenderOptions(
    show_text=True,
    font_family="monospace",
    font_size=12.0,
    scale=2.5,
)
svg = barcode.to_svg(options)

Γρήγορη Εκκίνηση

git clone https://github.com/aspose-barcode-foss/Aspose.BarCode-FOSS-for-Python.git
cd Aspose.BarCode-FOSS-for-Python
pip install -e .
from aspose_barcode_foss import BarcodeService, RenderOptions

service = BarcodeService()

# Generate a Code 128 barcode
barcode = service.generate("code128", "HELLO-2026")

# Render to SVG with custom options
options = RenderOptions(
    scale=2.0,
    show_text=True,
    foreground_color="#000000",
    background_color="#FFFFFF",
    quiet_zone=4.0,
)

svg_output = barcode.to_svg(options)
with open("hello.svg", "w") as f:
    f.write(svg_output)

# Render to PNG at 300 DPI
png_bytes = barcode.to_png(RenderOptions(dpi=300, scale=3.0))
with open("hello.png", "wb") as f:
    f.write(png_bytes)

Υποστηριζόμενες Μορφές

ΜορφήΕπέκτασηΑνάγνωσηΕγγραφή
SVG.svg
PNG.png

Σημείωση: Το PdfRenderer υπάρχει στο API αλλά προκαλεί NotImplementedError στην τρέχουσα έκδοση.


Ανοιχτός Κώδικας & Άδειες

Aspose.BarCode FOSS για Python κυκλοφορεί υπό την άδεια MIT. Ο πηγαίος κώδικας φιλοξενείται στο GitHub. Μπορείτε να χρησιμοποιήσετε, να τροποποιήσετε και να διανείμετε τη βιβλιοθήκη τόσο σε ανοιχτού κώδικα όσο και σε εμπορικά έργα.


Ξεκινώντας

Σχετικοί Πόροι