Jak vykreslit čárové kódy pomocí Aspose.BarCode FOSS

Jak vykreslit čárové kódy pomocí Aspose.BarCode FOSS

Problem

Po vygenerování čárového kódu jej musíte vykreslit jako soubor obrázku. Aspose.BarCode FOSS pro Python vykresluje čárové kódy do formátů SVG a PNG pomocí metod to_svg() a to_png() na objektu Barcode. Třída RenderOptions řídí vizuální vlastnosti, jako jsou měřítko, DPI, barvy, tichá zóna a zobrazení lidsky čitelného textu.

import aspose_barcode_foss as barcode
from aspose_barcode_foss import RenderOptions

bc = barcode.code128("RENDER-ME")
png = bc.to_png(options=RenderOptions(scale=2.0, dpi=300))

Požadavky

  • Python 3.12 nebo novější
  • správce balíčků pip
  • aspose-barcode-foss sestavený ze zdrojového kódu

Výstup SVG

Vyvolejte to_svg() pro získání čárového kódu jako řetězce SVG. Výstup SVG je vektorový a škáluje se bez ztráty kvality.

import aspose_barcode_foss as barcode

bc = barcode.qr("https://example.com")
svg_string = bc.to_svg()

with open("barcode.svg", "w") as f:
    f.write(svg_string)

Výstup PNG

Vyvolejte to_png() pro získání čárového kódu jako PNG bajtů. Výstup PNG je rasterizován v určeném měřítku a DPI.

import aspose_barcode_foss as barcode

bc = barcode.code128("PNG-OUTPUT")
png_bytes = bc.to_png()

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

Řízení měřítka a DPI

Použijte RenderOptions k nastavení scale (desetinný násobek pro velikost modulu) a dpi (bodů na palec pro rasterový výstup). Můžete také přímo nastavit module_width a module_height pro přesnou kontrolu nad rozměry jednotlivých modulů.

from aspose_barcode_foss import RenderOptions

options = RenderOptions(
    scale=3.0,
    dpi=300,
    module_width=1.5,
    module_height=25.0,
)
png = bc.to_png(options=options)

Nastavení barev

Nastavte foreground_color a background_color jako řetězce barev CSS. Použijte transparent_background=True pro výstup PNG bez výplně pozadí.

from aspose_barcode_foss import RenderOptions

options = RenderOptions(
    foreground_color="#003366",
    background_color="#FFFFFF",
)
svg = bc.to_svg(options=options)

# Transparent background for PNG
options_transparent = RenderOptions(
    foreground_color="#000000",
    transparent_background=True,
)
png = bc.to_png(options=options_transparent)

Tichá zóna

Vlastnost quiet_zone řídí okraj bílého prostoru kolem čárového kódu v jednotkách modulů. Standardy čárových kódů obvykle vyžadují minimální tichou zónu pro spolehlivé skenování.

from aspose_barcode_foss import RenderOptions

options = RenderOptions(quiet_zone=10.0)
svg = bc.to_svg(options=options)

Čitelný text

Nastavte show_text=True pro vykreslení čitelného textu pod čárovým kódem. Písmo ovládejte pomocí font_family a font_size.

from aspose_barcode_foss import RenderOptions

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

Vlastnosti RenderOptions

VlastnostTyp:Popis:
scalefloatNásobitel velikosti modulu
dpiintBodů na palec (rastrový výstup)
module_widthfloatŠířka jednoho modulu
module_heightfloatVýška jednoho modulu
quiet_zonefloatMezera bílého prostoru v jednotkách modulu
foreground_colorstrCSS barva pro lišty/moduly
background_colorstrCSS barva pro pozadí
transparent_backgroundboolTransparentní PNG pozadí
show_textboolZobrazit čitelný text
font_familystrPísmo pro čitelný text
font_sizefloatVelikost písma pro čitelný text

Známá omezení

Metoda to_pdf() a třída PdfRenderer existují v API, ale vyvolávají NotImplementedError. Použijte místo nich to_svg() nebo to_png(). Výstup SVG lze vložit do PDF dokumentů pomocí externích nástrojů.

Viz také:

 Čeština