Encode Options ile Çalışma

Encode Options ile Çalışma

Aspose.BarCode FOSS for Python’da her çubuk kodu sembolü, kodlama davranışını kontrol eden özel bir seçenek sınıfına sahiptir. EncodeOptions,sağlayan, gs1_enabled ve eci_assignment_number Simboloların bir parçası olarak paylaşılır.


Code128Options

Code128Options Kodu 128 karakterini belirleyen kontroller kodun seçtiğini belirtir. encode_mode Mülkiyet A’yı kabul eder Code128EncodeMode Enum değerleri.

ModeDescription
AUTOEn kompakt kodlama otomatik olarak seçilir.
CODE_AYukarıdaki, sayılar ve kontrol karakterleri
CODE_BYukarı, aşağı ve sayılar
CODE_CDigit çiftleri – sayısal-sadece veriler için optimize edilmiştir
CODE_ABA ve B kodları arasındaki geçişler
CODE_ACA ve C kodları arasındaki anahtarlar
CODE_BCB ve C kodları arasındaki anahtarlar
import aspose_barcode_foss as barcode
from aspose_barcode_foss import Code128Options, Code128EncodeMode

# AUTO mode — library picks the most compact encoding
bc_auto = barcode.code128("ABC123", encode=Code128Options(encode_mode=Code128EncodeMode.AUTO))

# CODE_C mode — compact encoding for digit-only data
bc_c = barcode.code128("9876543210", encode=Code128Options(encode_mode=Code128EncodeMode.CODE_C))

# CODE_B mode — full alphanumeric support
bc_b = barcode.code128("Hello World", encode=Code128Options(encode_mode=Code128EncodeMode.CODE_B))

Code39Options

Code39Options Kodlayıcının temel 43 karakter setini veya tam ASCII uzantısını kullanıp kullanmadığını kontrol eder.

PropertyTypeDefaultDescription
full_asciiboolNoneTam ASCII modu (128 karakter aralığı değişken çiftler aracılığıyla) etkinleştirilir.
add_check_digitboolNoneModulo-43 kontrol numarası
from aspose_barcode_foss import Code39Options

# Base mode — uppercase letters, digits, and a few special characters
bc_base = barcode.code39("CODE 39")

# Full ASCII mode — encodes the full 128-character ASCII range
bc_full = barcode.code39(
    "Hello, World!",
    encode=Code39Options(full_ascii=True, add_check_digit=True),
)

QrOptions için

QrOptions Tüm simgeler arasında en çok yapılandırma yüzeyi vardır.

PropertyTypeValues
error_correction_levelQrErrorCorrectionLevelL %7 % , M %15 İle İlgili Yazılar, Q %25 İle İlgili Yazılar, H %30 (yüzde 30 )
encoding_modeQrEncodeModeAUTO, NUMERIC, ALPHANUMERIC, BYTE, KANJI
versionint1–40 (controls symbol dimensions)
maskint0–7 (manual mask pattern selection)
from aspose_barcode_foss import QrOptions, QrErrorCorrectionLevel, QrEncodeMode

# High error correction with byte encoding
bc = barcode.qr(
    "https://example.com",
    encode=QrOptions(
        error_correction_level=QrErrorCorrectionLevel.H,
        encoding_mode=QrEncodeMode.BYTE,
    ),
)

# Numeric mode for digit-only data — most compact QR
bc_num = barcode.qr(
    "0123456789",
    encode=QrOptions(encoding_mode=QrEncodeMode.NUMERIC),
)

# Explicit version and mask
bc_v5 = barcode.qr(
    "TEST",
    encode=QrOptions(version=5, mask=3),
)

Ean13Options

Ean13Options EAN-13 barkodları için kontrol dijital işleme.

PropertyTypeDefaultDescription
allow_check_digit_inputboolNone13 sayfalık giriş, önceden bilgisayarlı kontrol numarası ile kabul edilir.
from aspose_barcode_foss import Ean13Options

# 12 digits — library computes the 13th check digit
bc = barcode.ean13("590123412345")

# 13 digits — library validates the provided check digit
bc2 = barcode.ean13(
    "5901234123457",
    encode=Ean13Options(allow_check_digit_input=True),
)

Ean8Options

Ean8Options Aynı şekilde çalışıyor Ean13Options 8 sayfalık EAN çubuk kodları için. 7 payload sayıları (kütüphane 8. sayfa) veya ayarlayın allow_check_digit_input=True 8 sayfalık giriş için.

from aspose_barcode_foss import Ean8Options

bc = barcode.ean8("1234567")
bc2 = barcode.ean8("12345670", encode=Ean8Options(allow_check_digit_input=True))

UpcaOptions ve UpceOption

UpcaOptions ve UpceOptions Aynı şeyi takip edin allow_check_digit_input EAN seçenekleri olarak örnekler. UpceOptions Ayrıca bir number_system Mülkiyet için.

from aspose_barcode_foss import UpcaOptions, UpceOptions

# UPC-A: 11 digits, library adds check digit
bc_a = barcode.upca("01234567890")

# UPC-E with pre-computed check digit
bc_e = barcode.upce(
    "01234565",
    encode=UpceOptions(allow_check_digit_input=True),
)

EncodeOptions Temel Özellikleri

Tüm seçenek sınıfları bu özellikleri miras alır EncodeOptions:

PropertyTypeDescription
gs1_enabled`boolNone`
eci_assignment_number`intNone`

İpuçları ve En İyi Uygulamalar

  • Kullanım Code128EncodeMode.AUTO Karakter setlerini sınırlamak için belirli bir nedeniniz yoksa, herhangi bir giriş için en kısa çubuk kodu üretir.
  • Setleri QrErrorCorrectionLevel.H QR kodları, zarar gören yüzeylerde yazdırılır.
  • Kütüphane bilgisayar varsayılan olarak sayılar kontrol etsin - sadece ayarlayın allow_check_digit_input=True Başka bir sistemden önceden doğrulanmış verileri alırken.
  • Kullanım QrEncodeMode.NUMERIC Simbol boyutunu en aza indirmek için sadece QR verileri kullanın.

ortak sorunlar

IssueCauseFix
InvalidInputError 39 kodlarıYazıları içerir aşağıdaki yazılarıSetleri full_ascii=True içinde Code39Options
QR kodu çok büyükVergi uzunluğu için çok düşük ayarlanmıştır.Açıklayıcı kaldırma version ya da artırmak için
EAN-13’te yanlış kontrol numarası13-digit input without allow_check_digit_input=True12 sayfa (Auto) geçin veya seçeneği ayarlayın True
SymbologyNotFoundErrorSıradan simbol adı generate()Birini kullanın : code128, code39, ean13, ean8, qr, upca, upce

See Also

 Türkçe