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-fosssestavený 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
| Vlastnost | Typ: | Popis: |
|---|---|---|
scale | float | Násobitel velikosti modulu |
dpi | int | Bodů na palec (rastrový výstup) |
module_width | float | Šířka jednoho modulu |
module_height | float | Výška jednoho modulu |
quiet_zone | float | Mezera bílého prostoru v jednotkách modulu |
foreground_color | str | CSS barva pro lišty/moduly |
background_color | str | CSS barva pro pozadí |
transparent_background | bool | Transparentní PNG pozadí |
show_text | bool | Zobrazit čitelný text |
font_family | str | Písmo pro čitelný text |
font_size | float | Velikost 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ů.