نحوه پیکربندی گزینه‌های رمزگذاری در Aspose.BarCode FOSS

نحوه پیکربندی گزینه‌های رمزگذاری در Aspose.BarCode FOSS

Problem

هر نماد بارکد قوانین رمزگذاری خاص خود را دارد — سطوح تصحیح خطا برای QR Code، حالت‌های رمزگذاری برای Code 128، مدیریت رقم بررسی برای EAN/UPC. Aspose.BarCode FOSS برای Python یک کلاس گزینه‌های اختصاصی برای هر نماد فراهم می‌کند تا بتوانید این پارامترها را در زمان تولید کنترل کنید.

import aspose_barcode_foss as barcode
from aspose_barcode_foss import QrOptions, QrErrorCorrectionLevel

bc = barcode.qr(
    "https://example.com",
    encode=QrOptions(error_correction_level=QrErrorCorrectionLevel.H),
)
svg = bc.to_svg()

پیش‌نیازها

  • Python 3.12 یا بالاتر
  • مدیر بسته pip
  • aspose-barcode-foss ساخته شده از منبع

گزینه‌های QR Code

کلاس QrOptions رمزگذاری QR Code را کنترل می‌کند. error_correction_level را روی یکی از QrErrorCorrectionLevel.L، M، Q یا H تنظیم کنید. سطوح بالاتر، افزونگی را افزایش می‌دهند اما هزینه آن بزرگ‌تر شدن نمادها است. از encoding_mode برای انتخاب یک حالت داده QR خاص (QrEncodeMode.NUMERIC، ALPHANUMERIC، BYTE یا KANJI) استفاده کنید، یا برای انتخاب خودکار، آن را به عنوان AUTO بگذارید. ویژگی version (۱–۴۰) اندازه نماد را کنترل می‌کند، و mask (۰–۷) الگوی ماسک را بازنویسی می‌کند.

from aspose_barcode_foss import QrOptions, QrErrorCorrectionLevel, QrEncodeMode

options = QrOptions(
    error_correction_level=QrErrorCorrectionLevel.H,
    encoding_mode=QrEncodeMode.BYTE,
    version=5,
)
bc = barcode.qr("DATA", encode=options)

گزینه‌های Code 128

کلاس Code128Options ویژگی encode_mode را با مقادیر از Code128EncodeMode: AUTO، CODE_A، CODE_B، CODE_C، CODE_AB، CODE_AC، CODE_BC در دسترس قرار می‌دهد. در حالت AUTO، رمزگذار کوتاه‌ترین نمایش را انتخاب می‌کند. محدود کردن به زیرمجموعه خاص (مثلاً CODE_C برای داده‌های صرفاً عددی) می‌تواند عرض نماد را کاهش دهد.

from aspose_barcode_foss import Code128Options, Code128EncodeMode

options = Code128Options(encode_mode=Code128EncodeMode.CODE_C)
bc = barcode.code128("123456", encode=options)

گزینه‌های Code 39

کلاس Code39Options دو ویژگی کلیدی دارد: full_ascii رمزگذاری کامل ASCII را فعال می‌کند (مجموعه کاراکتری گسترش یافته فراتر از حروف بزرگ و ارقام)، و add_check_digit یک رقم چک modulo-43 به نماد اضافه می‌کند.

from aspose_barcode_foss import Code39Options

options = Code39Options(full_ascii=True, add_check_digit=True)
bc = barcode.code39("Hello", encode=options)

گزینه‌های رقم چک EAN و UPC

Ean13Options، Ean8Options، UpcaOptions و UpceOptions همگی از allow_check_digit_input پشتیبانی می‌کنند. به طور پیش‌فرض، کتابخانه رقم چک را به صورت خودکار محاسبه می‌کند — فقط ارقام بارگذاری را ارائه دهید (۱۲ برای EAN-13، ۷ برای EAN-8، ۱۱ برای UPC-A). برای ارسال یک رقم چک پیش‌محاسبه شده به عنوان بخشی از ورودی، allow_check_digit_input=True را تنظیم کنید.

from aspose_barcode_foss import Ean13Options

# Auto-compute check digit (12 digits)
bc = barcode.ean13("590123412345")

# Pre-computed check digit (13 digits)
bc = barcode.ean13(
    "5901234123457",
    encode=Ean13Options(allow_check_digit_input=True),
)

UPC-E سیستم عددی

UpceOptions یک ویژگی number_system اضافه می‌کند. بارکدهای UPC-E از سیستم عددی “0” یا “1” استفاده می‌کنند. این ویژگی را تنظیم کنید تا پیشوند سیستم عددی که رمزگذار استفاده می‌کند را کنترل کنید.

from aspose_barcode_foss import UpceOptions

options = UpceOptions(number_system="0", allow_check_digit_input=False)
bc = barcode.upce("012345", encode=options)

خلاصه گزینه‌ها

Symbologyکلاس Optionsویژگی‌های کلیدی
Code 128Code128Optionsencode_mode
Code 39Code39Optionsfull_ascii, add_check_digit
EAN-13Ean13Optionsallow_check_digit_input
EAN-8Ean8Optionsallow_check_digit_input
QR CodeQrOptionserror_correction_level, encoding_mode, version, mask
UPC-AUpcaOptionsallow_check_digit_input
UPC-EUpceOptionsnumber_system, allow_check_digit_input

همچنین ببینید:

 فارسی