Wie man Barcodes mit Aspose.BarCode FOSS rendert
Problem
Nach dem Erzeugen eines Barcodes müssen Sie ihn als Bilddatei rendern. Aspose.BarCode FOSS für Python rendert Barcodes in die Formate SVG und PNG über die Methoden to_svg() und to_png() des Objekts Barcode. Die Klasse RenderOptions steuert visuelle Eigenschaften wie Skalierung, DPI, Farben, Ruhezone und die Anzeige des menschenlesbaren Textes.
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))Voraussetzungen
- Python 3.12 oder neuer
- pip-Paketmanager
aspose-barcode-fossaus dem Quellcode gebaut
SVG-Ausgabe
Rufen Sie to_svg() auf, um den Barcode als SVG-String zu erhalten. SVG-Ausgabe ist vektor-basiert und skaliert ohne Qualitätsverlust.
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)PNG-Ausgabe
Rufen Sie to_png() auf, um den Barcode als PNG-Bytes zu erhalten. PNG-Ausgabe wird bei der angegebenen Skalierung und DPI gerastert.
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)Steuerung von Skalierung und DPI
Verwenden Sie RenderOptions, um scale (einen Gleitkomma-Multiplikator für die Modulgröße) und dpi (Punkte pro Zoll für die Rasterausgabe) festzulegen. Sie können auch module_width und module_height direkt setzen, um eine präzise Kontrolle über die einzelnen Moduldimensionen zu erhalten.
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)Farben festlegen
Setzen Sie foreground_color und background_color als CSS-Farbstrings. Verwenden Sie transparent_background=True für PNG-Ausgabe ohne Hintergrundfüllung.
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)Ruhezone
Die quiet_zone-Eigenschaft steuert den Leerraumabstand um den Barcode in Moduleinheiten. Barcode-Standards erfordern typischerweise eine minimale Ruhezone für zuverlässiges Scannen.
from aspose_barcode_foss import RenderOptions
options = RenderOptions(quiet_zone=10.0)
svg = bc.to_svg(options=options)Lesbarer Text
Setze show_text=True, um lesbaren Text unter dem Barcode darzustellen. Steuere die Schriftart mit font_family und 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)RenderOptions Eigenschaften
| Eigenschaft | Typ | Beschreibung |
|---|---|---|
scale | float | Multiplikator für die Modulgröße |
dpi | int | Punkte pro Zoll (Rasterausgabe) |
module_width | float | Breite eines Moduls |
module_height | float | Höhe eines Moduls |
quiet_zone | float | Whitespace-Rand in Moduleinheiten |
foreground_color | str | CSS Farbe für Balken/Module |
background_color | str | CSS Farbe für den Hintergrund |
transparent_background | bool | Transparenter PNG-Hintergrund |
show_text | bool | Menschlich lesbaren Text anzeigen |
font_family | str | Schriftart für menschenlesbaren Text |
font_size | float | Schriftgröße für menschenlesbaren Text |
Bekannte Einschränkungen
Die to_pdf()-Methode und die PdfRenderer-Klasse existieren im API, werfen jedoch NotImplementedError. Verwende stattdessen to_svg() oder to_png(). SVG-Ausgabe kann mithilfe externer Werkzeuge in PDF-Dokumente eingebettet werden.