Cum să redați coduri de bare cu Aspose.BarCode FOSS
Problem
După generarea unui cod de bare, trebuie să îl redați ca fișier imagine. Aspose.BarCode FOSS pentru Python redă codurile de bare în formatele SVG și PNG prin metodele to_svg() și to_png() ale obiectului Barcode. Clasa RenderOptions controlează proprietățile vizuale precum scară, DPI, culori, zona de liniște și afișarea textului lizibil pentru oameni.
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))Precondiții
- Python 3.12 sau mai târziu
- manager de pachete pip
aspose-barcode-fossconstruit din sursă
Ieșire SVG
Apelă to_svg() pentru a obține codul de bare ca un șir SVG. Ieșirea SVG este bazată pe vector și se scalează fără pierdere de calitate.
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)Ieșire PNG
Apelă to_png() pentru a obține codul de bare ca octeți PNG. Ieșirea PNG este rasterizată la scară și DPI specificate.
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)Controlul scalării și DPI
Folosește RenderOptions pentru a seta scale (un multiplicator float pentru dimensiunea modulului) și dpi (puncte pe inci pentru ieșirea raster). De asemenea, poți seta module_width și module_height direct pentru un control precis asupra dimensiunilor individuale ale modulului.
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)Setarea culorilor
Setează foreground_color și background_color ca șiruri de culoare CSS. Folosește transparent_background=True pentru ieșirea PNG fără umplere de fundal.
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)Zonă liniștită
Proprietatea quiet_zone controlează marginea de spațiu alb în jurul codului de bare în unități de modul. Standardele de coduri de bare solicită de obicei o zonă liniștită minimă pentru o scanare fiabilă.
from aspose_barcode_foss import RenderOptions
options = RenderOptions(quiet_zone=10.0)
svg = bc.to_svg(options=options)Text lizibil
Setați show_text=True pentru a reda text lizibil sub codul de bare. Controlați fontul cu font_family și 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)Proprietăți RenderOptions
| Proprietate | Tip | Descriere: |
|---|---|---|
scale | float | Multiplicator pentru dimensiunea modulului |
dpi | int | Puncte pe inci (ieșire raster) |
module_width | float | Lățimea unui modul |
module_height | float | Înălțimea unui modul |
quiet_zone | float | Marge de spațiu alb în unități de modul |
foreground_color | str | culoare CSS pentru bare/module |
background_color | str | culoare CSS pentru fundal |
transparent_background | bool | Fundal PNG transparent |
show_text | bool | Afișează textul lizibil |
font_family | str | Font pentru textul lizibil |
font_size | float | Dimensiunea fontului pentru textul lizibil |
Limitări cunoscute
Metoda to_pdf() și clasa PdfRenderer există în API, dar generează NotImplementedError. Utilizați to_svg() sau to_png() în schimb. Ieșirea SVG poate fi încorporată în documente PDF folosind instrumente externe.