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 asdmgen. 30-day free trial, then a license from https://libscanner.com/en/. Create a DataMatrix code online: https://libscanner.com/en/generate/
Создать DataMatrix онлайн, без установки: https://libscanner.com/generate/
Обёртка на 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.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Built distributions (wheels)
| File | Reset | |||
|---|---|---|---|---|
| libscanner_dmgen-1.0.1-py3-none-win_amd64.whl | Python 3 | none | Windows x86-64 | Details |
| libscanner_dmgen-1.0.1-py3-none-manylinux_2_36_x86_64.whl | Python 3 | none | Linux glibc 2.36+ x86-64 | Details |
| libscanner_dmgen-1.0.1-py3-none-manylinux_2_36_armv7l.whl | Python 3 | none | Linux glibc 2.36+ ARMv7l | Details |
| libscanner_dmgen-1.0.1-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.1-py3-none-win_amd64.whl
| Download URL | libscanner_dmgen-1.0.1-py3-none-win_amd64.whl |
|---|---|
| Size | 1.9 MB |
| Tags | Python 3 Windows x86-64 |
|
SHA-256 checksum How to use checksums |
2cbf087cc60027cdfbfb61f51740b7ab46d7b4eeda9f5d04753b002ce7e65d85
|
|
BLAKE2b-256 checksum How to use checksums |
edd0767894831f7ce05b462b48dc553f3d6949bfff416a09240b96fb55ff66c6
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.13.5
|
Release files / libscanner_dmgen-1.0.1-py3-none-manylinux_2_36_x86_64.whl
| Download URL | libscanner_dmgen-1.0.1-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 |
6c17a249f0a4ad940ae02f7ea2a629d207c649c212dc31787872a3462cc0a137
|
|
BLAKE2b-256 checksum How to use checksums |
f6396efb7b171bb535c64aa068362ae66133fc3a42ecd67a86da1cca7401b1c1
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.13.5
|
Release files / libscanner_dmgen-1.0.1-py3-none-manylinux_2_36_armv7l.whl
| Download URL | libscanner_dmgen-1.0.1-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 |
27eafbbdf300888768f1538ed1d09ad3d8313361ce381a4b0af13b29cf441262
|
|
BLAKE2b-256 checksum How to use checksums |
0c2e04e038029063edf449d9ac2c1d3b22b0f0c9fca3ceca59eb1f5e5edff221
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.13.5
|
Release files / libscanner_dmgen-1.0.1-py3-none-manylinux_2_36_aarch64.whl
| Download URL | libscanner_dmgen-1.0.1-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 |
10a172e14bd8a09e53a582734e983f03eb68274e0153b1242ca8a1c4d21924af
|
|
BLAKE2b-256 checksum How to use checksums |
cbbe0c17bf068eb1c476ce15ef3a5bad4144acd57f1ebcb566f56814e460653f
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.13.5
|