1. Produk
  2.   Aspose.BarCode
  3.   Aspose.BarCode FOSS for Python

Aspose.BarCode FOSS for Python

Perpustakaan Python sumber terbuka untuk menghasilkan kode batang 1D dan 2D yang sesuai standar. Lisensi MIT, Python murni, merender ke SVG dan PNG.

Perpustakaan Python Open-Source untuk Generasi Barcode

Aspose.BarCode FOSS untuk Python adalah perpustakaan gratis, sumber terbuka untuk menghasilkan barcode yang sesuai standar dalam Python murni. Instal dengan pip install aspose-barcode-foss dan mulai membuat barcode Code 128, Code 39, EAN-13, EAN-8, QR Code, UPC-A, dan UPC-E. Setiap barcode dirender langsung ke SVG atau PNG tanpa ketergantungan native.

Perpustakaan ini menyediakan fungsi generate() tingkat tinggi dan pembantu per-simbol seperti barcode.code128(), barcode.qr(), dan barcode.ean13(). Setiap pemanggilan mengembalikan objek Barcode dengan metode .to_svg() dan .to_png() untuk output langsung. Opsi rendering termasuk skala, DPI, dimensi modul, warna, zona tenang, dan visibilitas teks yang dapat dibaca manusia dikendalikan melalui RenderOptions.

Karena perpustakaan ini murni Python tanpa ketergantungan native Office atau imaging, ia berjalan identik di Windows, Linux, dan macOS, termasuk kontainer Docker dan runner CI. Basis kode berlisensi MIT dan dihosting di GitHub. Untuk fitur dan dukungan enterprise, lihat Aspose.BarCode for Python — Enterprise Product.

Generasi Barcode

  • ** Tujuh simbol:** Kode 128, Kodes 39, EAN-13, E AN-8, QR Code, UPC-A, dan U PC-E.
  • ** API tingkat tinggi:** Panggil barcode.generate("code128", "data") untuk membuat barcode yang didukung dengan nama.
  • ** Pembantu khusus:** Gunakan barcode.code128(), barcode.qr() , barcode.ean13(),barcode.ean8(),, barcode.upca() dan barcode.upce() untuk generasi yang aman.
  • Pilihan pengkodean: Kontrol mode kode, cek digit, tingkat koreksi kesalahan, dan GS1 melalui Code128Options, Code39Options , QrOptions, serta kelas opsi khusus simbologi.
  • Digit pemeriksaan otomatis: EAN-13, E AN-8, UPC-A, dan U PC-E menghitung digit pemeriksaan secara otomatis dari string data.

Dimana Aspose.BarCode FOSS dapat digunakan

  • Pelabelan produk: Menghasilkan barcode EAN-13 dan UPC-A untuk kemasan ritel.
  • ** Manajemen persediaan:** Buat label kode 128 untuk alur kerja gudang dan logistik.
  • ** Kampanye kode QR:** Buatlah kode-kode QR untuk materi pemasaran, tiket acara dan tautan seluler.
  • ** Pengiriman dan logistik:** Generasi kode 39 dan kode 128 barcode untuk label pelacakan pengiriman.

Rendering dan Output

  • SVG output: Panggil barcode.to_svg() untuk mendapatkan string SVG yang sesuai standar.
  • PNG output: Panggil barcode.to_png() untuk mendapatkan byte gambar PNG.
  • RenderOptions: Mengontrol scale, dpi, module_width, module_height, quiet_zone, foreground_color, background_color, transparent_background, show_text, font_family, dan font_size.
  • Human-readable text: Implementasi TextLayoutPolicy khusus simbologi menangani penempatan teks di bawah setiap tipe barcode.
  • Renderer architecture: PngRenderer dan SvgRenderer mengimplementasikan antarmuka Renderer untuk output yang dapat diperluas.

Pengalaman Pengembang

Aspose.BarCode FOSS dapat diinstal dengan pip install aspose-barcode-foss. Tidak ada pustaka native atau paket sistem yang perlu diinstal. Pustaka ini memerlukan Python 3.12 atau yang lebih baru.

API dibangun di sekitar Barcode, EncodeOptions, RenderOptions, dan SymbologyRegistry, mencakup seluruh pipeline generasi-ke-rendering. Setiap simbolologi didefinisikan oleh SymbologyDefinition yang menggabungkan parser, encoder, profil, dan kebijakan tata letak teks. Basis kode berlisensi MIT, dihosting di GitHub, dan menerima kontribusi.

Konfigurasi Simbologi

  • Kode 128 mode: Pilih AUTO, CODE_A , CODE_B,CODE_C atau mode campuran melalui Code128EncodeMode.
  • ** Mode kode 39:** Pilih BASE atau FULL_ASCII pengkodean dengan digit cek opsional melalui Code39Options.
  • QR opsi: Set error_correction_level (L, M, Q, H), version, mask dan encoding_mode [AUTO, NUMERIC, ALPHANUMEERic, BYTE, KANJI] melalui QrOptions.
  • ** Sistem registrasi:** SymbologyRegistry menyimpan semua definisi dan memecahkan simbol dengan nama kanonik atau alias.
  • ** Metadata profil:** Setiap simbolologi SymbologyProfile menyediakan default, kemampuan, referensi spesifikasi, dan keterbatasan yang diketahui.

Penanganan kesalahan

  • Pengurangan tipe: BarcodeError adalah dasar, dengan EncodingError, RenderingError,InvalidInputError , SymbologyNotFoundError,, UnsupportedFeatureError dan UnsupportedCapabilityError.
  • Pengesahan input: Setiap InputParser memvalidasi data sebelum mengkode, menangkap karakter yang tidak valid dan pelanggaran format lebih awal.
  • Pengujian kemampuan: Fitur yang tidak didukung (misalnya, input biner untuk Kode 39) mengangkat UnsupportedCapabilityError dengan pesan deskriptif.

Menghasilkan Barcode 128 Kode

Buat kode bar 128 dengan fungsi tingkat tinggi generate() dan render ke SVG.

import aspose_barcode_foss as barcode
bc = barcode.generate("code128", "Hello World")
svg_string = bc.to_svg()
print(svg_string[:80])

Buat kode QR dengan opsi khusus

Menghasilkan QR Code dengan koreksi kesalahan khusus dan render ke PNG byte.

import aspose_barcode_foss as barcode
from aspose_barcode_foss import QrOptions, QrErrorCorrectionLevel
bc = barcode.qr("https://example.com", options=QrOptions(
    error_correction_level=QrErrorCorrectionLevel.H
))
png_bytes = bc.to_png()
with open("qr.png", "wb") as f:
    f.write(png_bytes)

Render dengan Penampilan Khusus

Gunakan RenderOptions untuk mengontrol skala, warna, dan zona tenang untuk barcode apa pun.

import aspose_barcode_foss as barcode
from aspose_barcode_foss import RenderOptions
bc = barcode.ean13("590123412345")
svg = bc.to_svg(options=RenderOptions(
    scale=2.0,
    foreground_color="#003366",
    quiet_zone=10.0,
    show_text=True
))

Pertanyaan yang Sering Diajukan

Lisensi apa yang digunakan Aspose.BarCode FOSS untuk Python?

Perpustakaan ini dirilis di bawah Lisensi MIT. Anda dapat menggunakannya, memodifikasinya dan mendistribusikannya kembali dalam proyek open source maupun komersial tanpa royalti.

Simbologi barcode mana yang didukung?

Perpustakaan mendukung tujuh simbolologi Kode 128, Kodes 39, EAN-13, EAn-8, QR Code, UPC-A, dan U PC-E.

Format output apa yang tersedia?

Barcode render ke SVG melalui to_svg() dan PNG melaluito_png(). Metode to_pdf() ada di API tetapi menimbulkan NotImplementedError dalam rilis saat ini.

Bagaimana saya menginstal Aspose.BarCode FOSS untuk Python?

Run pip install aspose-barcode-foss. Perpustakaan membutuhkan Python 3.12 atau lebih baru. Ini adalah Python murni tanpa ketergantungan asli.

Bisakah aku mengontrol tampilan visual dari barcode?

Ya. Berikan objek RenderOptions ke to_svg() atau to_png() untuk mengontrol skala, DPI, dimensi modul, warna, zona diam, dan teks yang dapat dibaca manusia .

Versi Python apa yang didukung?

Aspose.BarCode FOSS membutuhkan Python 3.12 atau lebih baru. Ini adalah Python murni tanpa ketergantungan asli atau ekstensi C.

Bisakah saya menghasilkan barcode secara batch?

Ya. Buat satu instance BarcodeService dan panggil generate() dalam loop untuk setiap nilai data. Setiap panggilan mengembalikan objek Barcode yang Anda render secara independen dengan to_svg() atau to_png().

Bagaimana cara mengkonfigurasi opsi pengkodean per-simbologi?

Berikan objek opsi khusus simbol (misalnya Code128Options, QrOptions, Ean13Options) sebagai parameter encode ke BarcodeService.generate(). Setiap kelas opsi mengekspos properti yang spesifik untuk simbol tersebut, seperti encode_mode untuk Code 128 atau error_correction_level untuk QR Code.

  

Sumber Daya Dukungan dan Pembelajaran

 Bahasa Indonesia