Barkodları Aspose.BarCode FOSS ile Nasıl Render Edilir
Problem
Bir barkod oluşturduktan sonra, onu bir görüntü dosyası olarak oluşturmanız gerekir. Aspose.BarCode FOSS for Python barkodları SVG ve PNG formatlarına, Barcode nesnesindeki to_svg() ve to_png() yöntemleri aracılığıyla oluşturur. RenderOptions sınıfı ölçek, DPI, renkler, sessiz bölge ve insan tarafından okunabilir metin gösterimi gibi görsel özellikleri kontrol eder.
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))Önkoşullar
- Python 3.12 veya üzeri
- pip paket yöneticisi
aspose-barcode-fosskaynaktan derlenmiş
SVG Çıktısı
Barkodu bir SVG dizesi olarak almak için to_svg() çağırın. SVG çıktısı vektör tabanlıdır ve kalite kaybı olmadan ölçeklenir.
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 Çıktısı
Barkodu PNG baytları olarak almak için to_png() çağırın. PNG çıktısı belirtilen ölçek ve DPI’de rasterleştirilir.
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)Ölçek ve DPI Kontrolü
RenderOptions kullanarak scale‘i (modül boyutu için bir kayan nokta çarpanı) ve dpi‘yi (raster çıktı için inç başına nokta) ayarlayın. Ayrıca, bireysel modül boyutları üzerinde hassas kontrol için module_width ve module_height‘ü doğrudan ayarlayabilirsiniz.
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)Renk Ayarlama
foreground_color ve background_color‘i CSS renk dizgeleri olarak ayarlayın. Arka plan doldurması olmadan PNG çıktısı için transparent_background=True‘yi kullanın.
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)Sessiz Bölge
quiet_zone özelliği, barkodun etrafındaki beyaz boşluk marjını modül birimlerinde kontrol eder. Barkod standartları genellikle güvenilir tarama için minimum bir sessiz bölge gerektirir.
from aspose_barcode_foss import RenderOptions
options = RenderOptions(quiet_zone=10.0)
svg = bc.to_svg(options=options)İnsan Okunabilir Metin
show_text=True ayarlayarak insan okunabilir metni barkodun altına renderlayın. Yazı tipini font_family ve font_size ile kontrol edin.
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 Özellikleri
| Özellik | Tür | Açıklama |
|---|---|---|
scale | float | Modül boyutu için çarpan |
dpi | int | İnç başına nokta (raster çıktısı) |
module_width | float | Bir modülün genişliği |
module_height | float | Bir modülün yüksekliği |
quiet_zone | float | Modül birimlerinde boşluk marjı |
foreground_color | str | CSS rengi çubuklar/modüller için |
background_color | str | CSS rengi arka plan için |
transparent_background | bool | Şeffaf PNG arka planı |
show_text | bool | İnsan tarafından okunabilir metni göster |
font_family | str | İnsan tarafından okunabilir metin için yazı tipi |
font_size | float | İnsan okunabilir metin için yazı tipi boyutu |
Bilinen Sınırlamalar
to_pdf() yöntemi ve PdfRenderer sınıfı API içinde mevcut, ancak NotImplementedError hatası verir. Bunun yerine to_svg() veya to_png() kullanın. SVG çıktısı, harici araçlar kullanılarak PDF belgelerine gömülebilir.