Najczęściej zadawane pytania

Najczęściej zadawane pytania

Licencjonowanie & Open Source

Jaką licencję używa Aspose.BarCode FOSS dla Python?

Aspose.BarCode FOSS dla Python jest wydany na licencji MIT. Pełny tekst licencji znajduje się w pliku LICENSE dystrybuowanym z pakietem. Masz swobodę używania, modyfikowania i rozpowszechniania biblioteki zarówno w projektach open-source, jak i własnościowych.

Czy mogę używać Aspose.BarCode FOSS w produktach komercyjnych?

Tak. Licencja MIT zezwala na komercyjne użycie bez opłat licencyjnych ani wymagań dotyczących przypisania, poza umieszczeniem oryginalnego komunikatu licencyjnego. Nie musisz udostępniać kodu źródłowego swojej aplikacji.


Instalacja & Wymagania

Jak zainstalować Aspose.BarCode FOSS dla Python?

Zainstaluj go za pomocą poniższego polecenia:

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

Biblioteka wymaga Python 3.12 lub nowszej.

Czy wymagane są jakiekolwiek natywne zależności lub pakiety systemowe?

Nie. Aspose.BarCode FOSS dla Python jest pakietem czysto-Python. Nie ma natywnych rozszerzeń, nie ma zależności C i nie wymaga instalacji pakietów systemowych. Działa na Windows, macOS i Linux — w tym na odchudzonych obrazach Docker, takich jak python:3.12-slim.


Obsługa symbologii

Jakie symbologie kodów kreskowych są obsługiwane?

Biblioteka obsługuje siedem symbologii:

SymbologyTypKlasa Opcji
Code 1281DCode128Options
Code 391DCode39Options
EAN-131DEan13Options
EAN-81DEan8Options
QR Code2DQrOptions
UPC-A1DUpcaOptions
UPC-E1DUpceOptions

Każda symbolika ma dedykowaną funkcję pomocniczą (code128(), code39(), ean13(), ean8(), qr(), upca(), upce()) oraz ogólną funkcję generate(), która przyjmuje jako argument nazwę symboliki w postaci łańcucha znaków.

Jakie formaty wyjściowe są dostępne?

Biblioteka renderuje kody kreskowe do SVG i PNG:

  • to_svg() — zwraca ciąg SVG
  • to_png() — zwraca bajty PNG

Obie metody przyjmują opcjonalny parametr RenderOptions służący do kontrolowania skali, DPI, kolorów, strefy ciszy oraz tekstu czytelnego dla człowieka.


API Usage

Jak wygenerować kod kreskowy?

Użyj pomocniczej funkcji specyficznej dla każdej symbologii:

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)

Lub użyj generycznej funkcji generate():

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

Jak skonfigurować opcje kodowania?

Każda symbologia ma dedykowaną klasę opcji. Przekaż ją jako parametr encode:

from aspose_barcode_foss import QrOptions, QrErrorCorrectionLevel

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

Jak kontrolować wygląd wizualny kodu kreskowego?

Użyj RenderOptions z to_svg() lub 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,
))

Dostępne właściwości: scale, dpi, module_width, module_height, quiet_zone, foreground_color, background_color, transparent_background, show_text, font_family, font_size.

Jak biblioteka obsługuje cyfry kontrolne dla kodów kreskowych EAN i UPC?

Domyślnie biblioteka oblicza cyfrę kontrolną automatycznie. Podaj tylko cyfry ładunku (12 dla EAN-13, 7 dla EAN-8, 11 dla UPC-A):

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

Aby podać wstępnie obliczoną cyfrę kontrolną, ustaw 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),
)

Znane ograniczenia

Czy obsługiwany jest wyjściowy format PDF?

Nie. Metoda to_pdf() i klasa PdfRenderer istnieją w warstwie API, ale wywołują NotImplementedError. Użyj to_svg() lub to_png(). Wyjście SVG można osadzić w dokumentach PDF przy użyciu zewnętrznych narzędzi.

Czy standardy ECI i GS1 są obsługiwane?

Jeszcze nie. Klasy EciHelper i Gs1Helper mają szkieletowe metody, które wywołują NotImplementedError. Właściwości eci_assignment_number i gs1_enabled w EncodeOptions są dostępne, ale nie działają w bieżącej wersji.

Czy biblioteka może odczytywać lub skanować kody kreskowe?

No. Aspose.BarCode FOSS dla Python jest biblioteką tylko do generowania. Tworzy kody kreskowe z danych, ale nie zawiera funkcji rozpoznawania kodów kreskowych ani skanowania.

Zobacz także

 Polski