Bevezetés
Aspose.BarCode FOSS a Python számára hét szimbólumban generál vonalkódokat, és SVG-be és PNG-be rendereli őket. Ez a bejegyzés a renderelési csővezetékre összpontosít — hogyan lehet vezérelni a kimeneti formátumot, a méreteket, a színeket és az ember által olvasható szöveget a RenderOptions, SvgRenderer és PngRenderer használatával.
A könyvtár elérhető a PyPI platformon aspose-barcode-foss néven, MIT licenc alatt kiadva, natív függőségek nélkül. Minden vonalkód objektum elérhetővé teszi a to_svg() és to_png() kényelmi metódusokat, valamint egy alacsonyabb szintű render() metódust, amely bármely Renderer megvalósítást elfogad.
Kulcsfontosságú jellemzők
SVG kimenet a SvgRenderer használatával
SvgRenderer felbontásfüggetlen SVG jelölést állít elő. A Barcode.to_svg() metódus egy gyorsbillentyű, amely belsőleg a SvgRenderer használja.
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 kimenet a PngRenderer használatával
PngRenderer raster PNG képeket állít elő. A felbontást a RenderOptions dpi tulajdonságával szabályozhatja. A Barcode.to_png() metódus a kényelmi gyorsgomb.
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)
Méretezés és DPI szabályozása
RenderOptions scale (a modulméretek szorzója) és dpi (pont per hüvelyk a raszteres kimenethez) biztosítja. Ezek együtt működnek: scale befolyásolja a vonalak és szóközök logikai méretét, míg dpi szabályozza a pixel sűrűségét a PNG kimenetben.
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)
Színek és háttér
Állítsa be a foreground_color és background_color értékeket CSS színkarakterláncokként. Engedélyezze a transparent_background beállítást a háttér kitöltésének kihagyásához (hasznos meglévő tervek fölé helyezéskor).
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)
Csendes zóna vezérlése
A quiet_zone tulajdonság beállítja a vonalkód körüli üres margót modul-szélesség egységekben. A legtöbb vonalkód szabvány minimális csendes zónát igényel a megbízható beolvasáshoz.
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)
Ember által olvasható szöveg
Állítsa be a(z) show_text=True értékét, hogy a kódolt adatot a vonalkód alatt jelenítse meg. A font_family és font_size tulajdonságok szabályozzák a szöveg megjelenését.
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)
Gyors kezdés
asposefoss/barcode is not yet published — build from source until it ships. See the project README for build instructions.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)
Támogatott formátumok
| Formátum | Kiterjesztés | Olvas | Írás |
|---|---|---|---|
| SVG | .svg | — | ✓ |
| PNG | .png | — | ✓ |
Megjegyzés: PdfRenderer létezik a API-ben, de a jelenlegi kiadásban NotImplementedError hibát okoz.
Nyílt forráskód és licencelés
Aspose.BarCode FOSS a Python számára MIT licenc alatt kerül kiadásra. A forráskód a GitHub-on van tárolva. A könyvtárat nyílt forráskódú és kereskedelmi projektekben egyaránt használhatja, módosíthatja és újra terjesztheti.