Quickstart

Quickstart Aspose.BarCode FOSS untuk Python

Panduan ini berjalan melalui generasi barcode menggunakan tiga simbol yang paling umum: Kode 128, QR Code, dan EAN-13. Setiap contoh menunjukkan API tingkat tinggi, opsi kode per-simbolologi, serta kontrol rendering.


Menghasilkan Barcode 128 Kode

Kode 128 adalah simbolologi 1D dengan panjang variabel yang digunakan dalam logistik dan pengiriman. code128() helper menerima string data dan opsional Code128Options:

import aspose_barcode_foss as barcode
from aspose_barcode_foss import Code128Options, Code128EncodeMode

bc = barcode.code128(
    "1234567890",
    encode=Code128Options(encode_mode=Code128EncodeMode.CODE_C),
)
svg = bc.to_svg()

with open("code128.svg", "w") as f:
    f.write(svg)

Code128EncodeMode.CODE_C dioptimalkan untuk data digit-only mengkodekan pasangan angka sebagai titik kode tunggal, menghasilkan barcode yang lebih pendek.


Menghasilkan QR Code

QR Code adalah simbol 2D yang mendukung koreksi kesalahan dan beberapa mode pengkodean. QrOptions mengontrol tingkat koreksi kesalahan, mode pengkodean, versi, dan pola topeng:

import aspose_barcode_foss as barcode
from aspose_barcode_foss import QrOptions, QrErrorCorrectionLevel, QrEncodeMode

bc = barcode.qr(
    "https://example.com/product/12345",
    encode=QrOptions(
        error_correction_level=QrErrorCorrectionLevel.Q,
        encoding_mode=QrEncodeMode.BYTE,
    ),
)

with open("qr.png", "wb") as f:
    f.write(bc.to_png())

Tingkat koreksi kesalahan: L (7% pemulihan), M (15%), Q 25%), H (30%).


Menghasilkan Barcode EAN-13

EAN-13 adalah simbolisme 1D panjang tetap yang digunakan di ritel. Pasokan 12 digit muatan perpustakaan menghitung angka cek ke 13 secara otomatis:

import aspose_barcode_foss as barcode

bc = barcode.ean13("590123412345")
svg = bc.to_svg()

with open("ean13.svg", "w") as f:
    f.write(svg)

Untuk memberikan digit cek pra-terhitung Anda sendiri (13 angka total), set allow_check_digit_input=True:

from aspose_barcode_foss import Ean13Options

bc = barcode.ean13(
    "5901234123457",
    encode=Ean13Options(allow_check_digit_input=True),
)

Sesuaikan Rendering

RenderOptions berlaku untuk semua simbol dan mengontrol output visual. to_svg() atau: to_png():

import aspose_barcode_foss as barcode
from aspose_barcode_foss import RenderOptions

bc = barcode.upca("01234567890")
png = bc.to_png(options=RenderOptions(
    scale=3.0,
    dpi=300,
    foreground_color="#1a1a1a",
    background_color="#ffffff",
    show_text=True,
    font_family="Courier New",
))

with open("upca.png", "wb") as f:
    f.write(png)

Properti yang tersedia: scale, dpi, module_width, module_height, quiet_zone, foreground_color, background_color, transparent_background, show_text, font_family, font_size.


Gunakan Generic generate (API)

Pengelolaan generate() fungsi menerima string nama simbologi alih-alih memanggil penolong khusus:

import aspose_barcode_foss as barcode

bc = barcode.generate("code128", "ABC123")
svg = bc.to_svg()

Nama simbologi yang valid: "code128", "code39", "ean13", "ean8", "qr", "upca", "upce".


Penanganan Kesalahan

Semua validasi terjadi sebelum pengkodean. Jika data yang tidak sah atau opsi yang tak kompatibel disediakan, perpustakaan akan menimbulkan pengecualian diketik:

import aspose_barcode_foss as barcode
from aspose_barcode_foss import InvalidInputError

try:
    bc = barcode.ean13("ABC")  # EAN-13 requires digits
except InvalidInputError as e:
    print(f"Invalid input: {e}")

Hierarki pengecualian:

ExceptionKetika dibangkitkan,
InvalidInputErrorData berisi karakter yang tidak didukung oleh simbologi.
EncodingErrorKode gagal (misalnya, data melebihi kapasitas simbologi)
SymbologyNotFoundErrorNama simbologi yang tidak diakui ditransfer ke generate()
UnsupportedCapabilityErrorFitur yang diminta tidak tersedia untuk simbol ini

Semua kelas pengecualian mewarisi dari BarcodeError.


Simbologi yang Didukung

SymbologyTypeKelas OpsiSifat-sifat Utama
Kode 1281DCode128Optionsencode_mode
Kode 391DCode39Optionsfull_ascii, add_check_digit
EAN-131DEan13Optionsallow_check_digit_input
EAN-81DEan8Optionsallow_check_digit_input
Kode QR2DQrOptionserror_correction_level, encoding_mode, version, mask
UPC-A1DUpcaOptionsallow_check_digit_input
UPC-E1DUpceOptionsallow_check_digit_input

Format output: SVG dan PNG.


Langkah-langkah Selanjutnya

See Also

 Bahasa Indonesia