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çimUzantıOkuYaz
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.


Başlarken

İlgili Kaynaklar