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/.
Обёртка на 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)
| File | Reset | |||
|---|---|---|---|---|
| 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
|