Cara Merender Barcode dengan Aspose.BarCode FOSS
Problem
Setelah menghasilkan kode batang, Anda perlu merendernya sebagai file gambar. Aspose.BarCode FOSS untuk Python merender kode batang ke format SVG dan PNG melalui metode to_svg() dan to_png() pada objek Barcode. Kelas RenderOptions mengontrol properti visual seperti skala, DPI, warna, zona tenang, dan tampilan teks yang dapat dibaca manusia.
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))Prasyarat
- Python 3.12 atau lebih baru
- manajer paket pip
aspose-barcode-fossdibangun dari sumber
Output SVG
Panggil to_svg() untuk mendapatkan kode batang sebagai string SVG. Output SVG berbasis vektor dan dapat diskalakan tanpa kehilangan kualitas.
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)Output PNG
Panggil to_png() untuk mendapatkan kode batang dalam bentuk byte PNG. Output PNG dirasterkan pada skala dan DPI yang ditentukan.
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)Mengontrol Skala dan DPI
Gunakan RenderOptions untuk mengatur scale (sebuah pengali float untuk ukuran modul) dan dpi (dot per inci untuk output raster). Anda juga dapat mengatur module_width dan module_height secara langsung untuk kontrol presisi atas dimensi masing-masing modul.
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)Mengatur Warna
Atur foreground_color dan background_color sebagai string warna CSS. Gunakan transparent_background=True untuk output PNG tanpa pengisian latar belakang.
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)Zona Tenang
Properti quiet_zone mengontrol margin spasi putih di sekitar kode batang dalam satuan modul. Standar kode batang biasanya memerlukan zona tenang minimum untuk pemindaian yang dapat diandalkan.
from aspose_barcode_foss import RenderOptions
options = RenderOptions(quiet_zone=10.0)
svg = bc.to_svg(options=options)Teks yang Dapat Dibaca Manusia
Atur show_text=True untuk menampilkan teks yang dapat dibaca manusia di bawah kode batang. Kendalikan font dengan font_family dan 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)Properti RenderOptions
| Properti | Jenis | Deskripsi |
|---|---|---|
scale | float | Pengganda untuk ukuran modul |
dpi | int | Titik per inci (output raster) |
module_width | float | Lebar satu modul |
module_height | float | Tinggi satu modul |
quiet_zone | float | Margin spasi putih dalam satuan modul |
foreground_color | str | CSS warna untuk bilah/modul |
background_color | str | warna CSS untuk latar belakang |
transparent_background | bool | Latar belakang PNG transparan |
show_text | bool | Tampilkan teks yang dapat dibaca manusia |
font_family | str | Font untuk teks yang dapat dibaca manusia |
font_size | float | Ukuran font untuk teks yang dapat dibaca manusia |
Keterbatasan yang Diketahui
Metode to_pdf() dan kelas PdfRenderer ada dalam API tetapi menghasilkan NotImplementedError. Gunakan to_svg() atau to_png() sebagai gantinya. Output SVG dapat disematkan dalam dokumen PDF menggunakan alat eksternal.