سوالات متداول

سوالات متداول

مجوزها و متن باز

مجوزی که Aspose.BarCode FOSS برای Python استفاده می‌کند چیست؟

Aspose.BarCode FOSS برای Python تحت مجوز MIT منتشر شده است. متن کامل مجوز در فایل LICENSE که همراه با بسته توزیع می‌شود، گنجانده شده است. شما آزاد هستید که کتابخانه را در پروژه‌های متن باز و مالکیتی استفاده، تغییر و دوباره توزیع کنید.

آیا می‌توانم Aspose.BarCode FOSS را در محصولات تجاری استفاده کنم؟

بله. مجوز MIT اجازه استفاده تجاری را بدون حق‌الاثر یا الزامات انتساب جز اضافه کردن اعلان اصلی مجوز می‌دهد. نیازی به متن باز کردن برنامه شما نیست.


نصب و پیش‌نیازها

چگونه Aspose.BarCode FOSS برای Python را نصب کنم؟

آن را با دستور زیر نصب کنید:

git clone https://github.com/aspose-barcode-foss/Aspose.BarCode-FOSS-for-Python.git
cd Aspose.BarCode-FOSS-for-Python
pip install -e .

این کتابخانه به Python نسخه 3.12 یا بالاتر نیاز دارد.

آیا وابستگی‌های بومی یا بسته‌های سیستمی مورد نیاز هستند؟

خیر. Aspose.BarCode FOSS برای Python یک بستهٔ pure-Python است. این بسته هیچ افزونه بومی، هیچ وابستگی C، و هیچ بستهٔ سیستمی برای نصب ندارد. بر روی Windows، macOS و Linux اجرا می‌شود — از جمله تصاویر سبک Docker مانند python:3.12-slim.


پشتیبانی از سمبولی‌ها

کدام سمبولی‌های بارکد پشتیبانی می‌شوند؟

این کتابخانه هفت سمبولی را پشتیبانی می‌کند:

Symbologyنوعکلاس Options
Code 1281DCode128Options
Code 391DCode39Options
EAN-131DEan13Options
EAN-81DEan8Options
QR Code2DQrOptions
UPC-A1DUpcaOptions
UPC-E1DUpceOptions

هر symbology یک تابع کمکی اختصاصی دارد (code128(), code39(), ean13(), ean8(), qr(), upca(), upce()) و یک تابع عمومی generate() که یک رشته نام symbology را می‌پذیرد.

چه فرمت‌های خروجی در دسترس هستند؟

کتابخانه بارکدها را به SVG و PNG رندر می‌کند:

  • to_svg() — یک رشته SVG برمی‌گرداند
  • to_png() — بایت‌های PNG را برمی‌گرداند

هر دو روش یک پارامتر اختیاری RenderOptions را می‌پذیرند تا مقیاس، DPI، رنگ‌ها، ناحیهٔ ساکت و متن قابل خواندن برای انسان را کنترل کنند.


API Usage

چگونه یک بارکد تولید کنم؟

از یک تابع کمک‌کننده برای هر سمبولی استفاده کنید:

import aspose_barcode_foss as barcode

bc = barcode.code128("Hello World")
svg = bc.to_svg()

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

یا از تابع عمومی generate() استفاده کنید:

bc = barcode.generate("qr", "https://example.com")

چگونه گزینه‌های کدگذاری را پیکربندی کنم؟

هر سمبولی یک کلاس گزینه‌های اختصاصی دارد. آن را به عنوان پارامتر encode عبور دهید:

from aspose_barcode_foss import QrOptions, QrErrorCorrectionLevel

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

چگونه ظاهر بصری بارکد را کنترل کنم؟

از RenderOptions همراه با to_svg() یا to_png() استفاده کنید:

from aspose_barcode_foss import RenderOptions

bc = barcode.code128("DATA")
png = bc.to_png(options=RenderOptions(
    scale=3.0,
    dpi=300,
    foreground_color="#003366",
    show_text=True,
))

خواص موجود: scale, dpi, module_width, module_height, quiet_zone, foreground_color, background_color, transparent_background, show_text, font_family, font_size.

کتابخانه چطور رقم‌های کنترل برای بارکدهای EAN و UPC را مدیریت می‌کند؟

به‌طور پیش‌فرض، کتابخانه رقم کنترل را به‌صورت خودکار محاسبه می‌کند. فقط ارقام بار مفید را وارد کنید (12 برای EAN-13، 7 برای EAN-8، 11 برای UPC-A):

bc = barcode.ean13("590123412345")  # 12 digits — check digit computed

برای ارائه یک رقم کنترل پیش‌محاسبه‌شده، allow_check_digit_input=True را تنظیم کنید:

from aspose_barcode_foss import Ean13Options

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

محدودیت‌های شناخته‌شده

آیا خروجی PDF پشتیبانی می‌شود؟

خیر. متد to_pdf() و کلاس PdfRenderer در سطح API موجود هستند اما NotImplementedError را ایجاد می‌کنند. به‌جای آن از to_svg() یا to_png() استفاده کنید. خروجی SVG می‌تواند با استفاده از ابزارهای خارجی در اسناد PDF جاسازی شود.

آیا استانداردهای ECI و GS1 پشتیبانی می‌شوند؟

هنوز نه. کلاس‌های EciHelper و Gs1Helper توابع قالبی دارند که NotImplementedError را ایجاد می‌کنند. ویژگی‌های eci_assignment_number و gs1_enabled در EncodeOptions موجود هستند اما در نسخه فعلی غیرقابل استفاده‌اند.

آیا کتابخانه می‌تواند بارکدها را بخواند یا اسکن کند؟

شماره Aspose.BarCode FOSS برای Python یک کتابخانه فقط-تولید است. این کتابخانه بارکدها را از داده‌ها ایجاد می‌کند اما شامل تشخیص یا قابلیت اسکن بارکد نمی‌شود.

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

 فارسی