Skip to main content

dmgen для Python

pip install libscanner-dmgen

Пакет импортируется как dmgen. Платформы: Windows x64, Linux x86-64, ARM64 и ARMv7 (glibc 2.36 и новее: Debian 12, Ubuntu 23.04+, Raspberry Pi OS Bookworm).

English. A DataMatrix ECC 200 generator for Python with GS1 and Chestny Znak (Russian product marking) validation: PNG/JPEG output, module matrix, readable error reports. Install with pip install libscanner-dmgen, import as dmgen. 30-day free trial, then a license from https://libscanner.com/en/.

Обёртка на ctypes над плоским C ABI библиотеки dmgen (dmgen_c.dll / libdmgen_c.so). Компилируемого расширения нет: одно колесо на платформу работает с любым Python 3.8+.

Колесо поставки (раздел «Загрузки» личного кабинета) несёт и собранную утилиту-оболочку: после pip install libscanner-dmgen в окружении есть команда dmgen (и python -m dmgen) — dmgen "текст" -o код.png, dmgen --license status. Файл ключа dmgen.key — в dmgen/_lib/, общий для утилиты и библиотеки.

import dmgen

png = dmgen.make_image("0104601234567893215Abc12Xyz!-\x1d93dGVz", gs1="cz")
dmgen.save("(01)04601234567893(21)5Abc12Xyz!-(93)dGVz", "code.png", gs1="cz", module_px=10)
jpg = dmgen.make_image("Hello", fmt="jpeg", quality=100, side=26)

rep = dmgen.validate_gs1("(01)04601234567894(21)ABC")
rep.ok          # False
rep.issues[0]   # Issue(code=…, warning=False, message='AI (01) GTIN: контрольная цифра 4, должна быть 3', …)

dmgen.encode_matrix("ABC")   # [[1, 0, 1, …], …] — 1 тёмный модуль
dmgen.SIZES                  # (10, 12, 14, …, 144)

Строка str кодируется в байты UTF-8; bytes передаются как есть. Ошибки — исключения dmgen.Gs1Error (с отчётом .report), dmgen.EncodeError, dmgen.UnlicensedError (нет ни пробного периода, ни лицензии), dmgen.DmgenError (общий предок).

Лицензия — dmgen.license: status(), activate(key), refresh(), deactivate(), write_activation_request(path), import_license_file(path), fingerprint(); ответы — dict из того же JSON, что у dmgen --license ... --json. Проще всего положить файл dmgen.key с ключом рядом с dmgen_c.dll / libdmgen_c.so в пакете (dmgen/_lib/): библиотека активирует его сама.

Библиотека грузится только из dmgen/_lib/ пакета. Переменная DMGEN_LIB (абсолютный путь) — для пакета из исходников, где _lib пуст, и колесо не переопределяет; системный поиск (PATH, каталоги библиотек) не используется.

Документация и лицензия

Документация: https://libscanner.com/docs/datamatrix-generator/?lang=python

Пробный период — 30 дней с первого запуска на машине, без регистрации и без сети. Без интернета: личный кабинет https://libscanner.com → Лицензии → «Активация без интернета».

Metadata

Release files for libscanner-dmgen 1.0.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Built distributions (wheels)

Table of built distributions (wheels) for libscanner-dmgen 1.0.0
File
libscanner_dmgen-1.0.0-py3-none-win_amd64.whl Python 3 none Windows x86-64 Details
libscanner_dmgen-1.0.0-py3-none-manylinux_2_36_x86_64.whl Python 3 none Linux glibc 2.36+ x86-64 Details
libscanner_dmgen-1.0.0-py3-none-manylinux_2_36_armv7l.whl Python 3 none Linux glibc 2.36+ ARMv7l Details
libscanner_dmgen-1.0.0-py3-none-manylinux_2_36_aarch64.whl Python 3 none Linux glibc 2.36+ ARM64 Details

Total release size: 5.4 MB

Release files / libscanner_dmgen-1.0.0-py3-none-win_amd64.whl

Download URL libscanner_dmgen-1.0.0-py3-none-win_amd64.whl
Size 1.9 MB
Tags Python 3 Windows x86-64
SHA-256 checksum
How to use checksums
92fb6540f97237a9fab7230da91e29b87397cfe1ebc0a3e3d62c4a627c995c23
BLAKE2b-256 checksum
How to use checksums
ac415a9223e4d287628d63c7f9d98dd45bfeee8b1e8a3eb7ca0dd9eaeb8b9274
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.11.2

Release files / libscanner_dmgen-1.0.0-py3-none-manylinux_2_36_x86_64.whl

Download URL libscanner_dmgen-1.0.0-py3-none-manylinux_2_36_x86_64.whl
Size 1.3 MB
Tags Linux glibc 2.36+ x86-64 Python 3
SHA-256 checksum
How to use checksums
ab6dca8a07f59354b19150e5e3b25f0d4e28ba6a0bb2c0043ad5749099f98cad
BLAKE2b-256 checksum
How to use checksums
ae93a5a6797e25f178d1912ab4810c4c876e0cece6d905f6bd16758c13e56ddb
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.11.2

Release files / libscanner_dmgen-1.0.0-py3-none-manylinux_2_36_armv7l.whl

Download URL libscanner_dmgen-1.0.0-py3-none-manylinux_2_36_armv7l.whl
Size 1.0 MB
Tags Linux glibc 2.36+ ARMv7l Python 3
SHA-256 checksum
How to use checksums
5aed6db0710e00b11a7d1b3b2419658936e4028744f86119273939b2279c213f
BLAKE2b-256 checksum
How to use checksums
0820ff0f96e5e66b95411406369acc648aa2468808988f7b014526f8617d6091
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.11.2

Release files / libscanner_dmgen-1.0.0-py3-none-manylinux_2_36_aarch64.whl

Download URL libscanner_dmgen-1.0.0-py3-none-manylinux_2_36_aarch64.whl
Size 1.2 MB
Tags Linux glibc 2.36+ ARM64 Python 3
SHA-256 checksum
How to use checksums
c8a782a640de6307fe63b908978a925448ceadbe767e5f7a34162f2c1c69a131
BLAKE2b-256 checksum
How to use checksums
9c19ce30a1189a3e1ecc051f0b04bb6e48c1a08adcd888b5cc49e513235a7828
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.11.2

Release history Release notifications | RSS feed

This release

1.0.0 This release

4 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page