Quickstart
Быстрый запуск Aspose.BarCode FOSS для Python
В этом руководстве описывается создание штрих-кодов с использованием трех наиболее распространенных символов: код 128, QR-Код и EAN-13. Каждый пример демонстрирует API высокого уровня, варианты кодирования по символам и элементы управления рендерингом.
Создать штрих-код 128
Код 128 - это 1D-симвология переменной длины, используемая в логистике и судоходстве. code128() помощник принимает строку данных и необязательное 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 оптимизирован для данных только с цифрами он кодирует пары цифр как отдельные точки кода, производя более короткий штрих-код.
Создать QR-код
QR-код - это 2D-симвология, поддерживающая исправление ошибок и несколько режимов кодирования. QrOptions контролирует уровень коррекции ошибок, режим кодирования, версию и маски:
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())Уровни исправления ошибок: L (7% восстановления), M (15%), Q (25%), H (30%).
Создать штрих-код EAN-13
EAN-13 - это фиксированная 1D-симвология, используемая в розничной торговле. Поставьте 12 цифр полезной нагрузки библиотека автоматически вычисляет 13-ю контрольную цифру:
import aspose_barcode_foss as barcode
bc = barcode.ean13("590123412345")
svg = bc.to_svg()
with open("ean13.svg", "w") as f:
f.write(svg)Для обеспечения собственной предварительно вычисленных контрольных цифр (13 цифров в общей сложности), набор allow_check_digit_input=True:
from aspose_barcode_foss import Ean13Options
bc = barcode.ean13(
"5901234123457",
encode=Ean13Options(allow_check_digit_input=True),
)Настроить отображение
RenderOptions применяется ко всем символикам и контролирует визуальный выход. Передайте его в to_svg() или в другом случае: 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)Доступные свойства: scale, dpi, module_width, module_height, quiet_zone, foreground_color, background_color, transparent_background, show_text, font_family, font_size.
Используйте API Generic generate ((()
В связи с этим generate() функция принимает символическую строку вместо вызова выделенного помощника:
import aspose_barcode_foss as barcode
bc = barcode.generate("code128", "ABC123")
svg = bc.to_svg()Действительные символические названия: "code128", "code39", "ean13", "ean8", "qr", "upca", "upce".
Обработка ошибок
Если предоставлены недействительные данные или несовместимые опции, библиотека возбуждает вписанное исключение:
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}")Иерархия исключений:
| Exception | Когда поднимается, |
|---|---|
InvalidInputError | Данные содержат символы, не поддерживаемые символогией. |
EncodingError | Провалилась кодировка (например, данные превышают емкость символики) |
SymbologyNotFoundError | Непризнанное символическое название перешло на: generate() |
UnsupportedCapabilityError | Запрошенная функция не доступна для этой символогии. |
Все классы исключений наследуют от: BarcodeError.
Поддерживаемые символики
| Symbology | Type | Класс опционов | Ключевые свойства |
|---|---|---|---|
| Код 128 | 1D | Code128Options | encode_mode |
| Код 39 | 1D | Code39Options | full_ascii, add_check_digit |
| EAN-13 | 1D | Ean13Options | allow_check_digit_input |
| EAN-8 | 1D | Ean8Options | allow_check_digit_input |
| QR-код | 2D | QrOptions | error_correction_level, encoding_mode, version, mask |
| UPC-A | 1D | UpcaOptions | allow_check_digit_input |
| UPC-E | 1D | UpceOptions | allow_check_digit_input |
Форматы вывода: SVG и PNG.
Следующие шаги
- Руководство разработчиков: Пер-симвология варианты кодирования, управления рендерингом и архитектура
- Features: Полный обзор функций с примерами кода.
- КБ Статьи:Руководство и часто задаваемые вопросы.