Giriş
Aspose.BarCode FOSS for Python, yedi semboloji içinde barkodlar üretir ve bunları SVG ve PNG’ye render eder. Bu gönderi renderleme hattına odaklanıyor — çıktı formatını, boyutları, renkleri ve insan tarafından okunabilir metni RenderOptions, SvgRenderer ve PngRenderer kullanarak nasıl kontrol edeceğinizi.
Kütüphane, PyPI üzerinde aspose-barcode-foss adıyla mevcuttur, MIT lisansı altında yayınlanmış ve yerel bağımlılıkları yoktur. Her barkod nesnesi to_svg() ve to_png() kolaylık metodlarını sunar, ayrıca herhangi bir Renderer uygulamasını kabul eden daha düşük seviyeli bir render() metodu da vardır.
Ana Özellikler
SvgRenderer ile SVG Çıktısı
SvgRenderer, çözünürlükten bağımsız SVG işaretlemesi üretir. Barcode.to_svg() metodu, içsel olarak SvgRenderer kullanan bir kısayoldur.
from aspose_barcode_foss import BarcodeService, RenderOptions
from aspose_barcode_foss.rendering import SvgRenderer
service = BarcodeService()
barcode = service.generate("code128", "RENDER-TEST-001")
# Direct convenience method
svg_string = barcode.to_svg(RenderOptions(scale=2.0))
# Explicit renderer usage
renderer = SvgRenderer()
result = barcode.render(renderer, RenderOptions(scale=2.0, show_text=True))
PngRenderer ile PNG Çıktısı
PngRenderer raster PNG görüntüleri üretir. Çözünürlüğü RenderOptions üzerindeki dpi özelliğiyle kontrol edin. Barcode.to_png() yöntemi kullanışlı kısayoldur.
from aspose_barcode_foss import BarcodeService, RenderOptions
from aspose_barcode_foss.rendering import PngRenderer
service = BarcodeService()
barcode = service.generate("ean13", "590123412345")
# Convenience method — returns bytes
png_bytes = barcode.to_png(RenderOptions(dpi=300, scale=3.0))
with open("barcode.png", "wb") as f:
f.write(png_bytes)
Ölçeği ve DPI Kontrolü
RenderOptions scale‘i (modül boyutları için çarpan) ve dpi‘yi (raster çıktı için inç başına nokta) sağlar. Bunlar birlikte çalışır: scale çubuk ve boşlukların mantıksal boyutunu etkiler, dpi ise PNG çıktısındaki piksel yoğunluğunu kontrol eder.
from aspose_barcode_foss import RenderOptions
# High-resolution print label
print_options = RenderOptions(scale=4.0, dpi=600)
# Screen display
screen_options = RenderOptions(scale=1.0, dpi=96)
Renkler ve Arka Plan
foreground_color ve background_color‘i CSS renk dizgileri olarak ayarlayın. transparent_background‘yi etkinleştirerek arka plan doldurulmasını atlayın (mevcut tasarımların üzerine bindirme için faydalıdır).
from aspose_barcode_foss import BarcodeService, RenderOptions
service = BarcodeService()
barcode = service.generate("qrcode", "https://example.com")
options = RenderOptions(
foreground_color="#003366",
background_color="#FFFFFF",
scale=3.0,
)
svg = barcode.to_svg(options)
Sessiz Bölge Kontrolü
quiet_zone özelliği, barkodun etrafındaki boş kenarı modül-genişliği birimlerinde ayarlar. Çoğu barkod standardı, güvenilir tarama için minimum bir sessiz bölge gerektirir.
from aspose_barcode_foss import BarcodeService, RenderOptions
service = BarcodeService()
barcode = service.generate("code39", "QUIET-ZONE")
# Wider quiet zone for print use
options = RenderOptions(quiet_zone=10.0, scale=2.0)
svg = barcode.to_svg(options)
İnsan Okuyabilir Metin
Kodlanmış veriyi barkodun altında göstermek için show_text=True ayarlayın. font_family ve font_size özellikleri metin görünümünü kontrol eder.
from aspose_barcode_foss import BarcodeService, RenderOptions
service = BarcodeService()
barcode = service.generate("upca", "01234567890")
options = RenderOptions(
show_text=True,
font_family="monospace",
font_size=12.0,
scale=2.5,
)
svg = barcode.to_svg(options)
Hızlı Başlangıç
git clone https://github.com/aspose-barcode-foss/Aspose.BarCode-FOSS-for-Python.git
cd Aspose.BarCode-FOSS-for-Python
pip install -e .from aspose_barcode_foss import BarcodeService, RenderOptions
service = BarcodeService()
# Generate a Code 128 barcode
barcode = service.generate("code128", "HELLO-2026")
# Render to SVG with custom options
options = RenderOptions(
scale=2.0,
show_text=True,
foreground_color="#000000",
background_color="#FFFFFF",
quiet_zone=4.0,
)
svg_output = barcode.to_svg(options)
with open("hello.svg", "w") as f:
f.write(svg_output)
# Render to PNG at 300 DPI
png_bytes = barcode.to_png(RenderOptions(dpi=300, scale=3.0))
with open("hello.png", "wb") as f:
f.write(png_bytes)
Desteklenen Biçimler
| Biçim | Uzantı | Oku | Yaz |
|---|---|---|---|
| SVG | .svg | — | ✓ |
| PNG | .png | — | ✓ |
Not: PdfRenderer, API içinde mevcut ancak mevcut sürümde NotImplementedError hatasına yol açar.
Açık Kaynak & Lisanslama
Aspose.BarCode Python için FOSS, MIT Lisansı altında yayımlanmıştır. Kaynak kodu GitHub üzerinde barındırılmaktadır. Kütüphaneyi hem açık kaynak hem de ticari projelerde kullanabilir, değiştirebilir ve yeniden dağıtabilirsiniz.