Для разбора и кодирования Data Matrix-кодов (оформленный в виде квадрата
матричный код, состоящий из прямоугольных областей и способный содержать в себе
несколько килобайт данных) в Linux удобно использовать пакет libdmtx-utils.
Устанавливаем в Debian/Ubuntu:
sudo apt-get install libdmtx-utils
в Fedora:
sudo yum install libdmtx-utils
Кодируем текст из файла test.txt и сохраняем его в изображение test.png:
dmtxwrite -o test.png test.txt
для управления выводом можно использовать опции:
"-d N" - задаёт размер модуля в пикселях;
"-s NxM" - задает размер кодирующих прямоугольников, например, "-s 10x10"
"-m N" - задаёт отступы от границ изображения в пикселях;
"-e тип" - задаёт тип кодирования данных:
b = оптимизация, ориентированная на качество;
f = оптимизация, ориентированная на скорость;
a = ASCII (по умолчанию)
c = C40 (цифры и символы верхнего регистра)
t = Text (цифры и символы нижнего регистра)
x = X12 ANSI X12 EDI
e = EDIFACT (ASCII символы с кодами 32-94)
8 = Base 256 (все восьмибитные символы)
"-f формат" - задаёт формат изображения для сохранения (список поддерживаемых форматов можно посмотреть через опцию "-l")
Декодируем содержимое Data Matrix-кода, содержащегося в изображении test.png:
dmtxread test.png
Другие варианты.
Система zbar (http://sourceforge.net/projects/zbar/) позволяет декодировать не
только QR-коды, но и штрих коды других типов.
Устанавливаем ZBar в Debian/Ubuntu:
sudo apt-get install zbar-tools
в Fedora:
sudo yum install zbar-tools
Декодируем содержимое штрих-кода, содержащегося в изображении test.jpg:
zbarimg test.jpg
Еще один вариант декодирования QR-кодов - использование программы
libdecodeqr-simpletest из пакета libdecodeqr-examples:
libdecodeqr-simpletest test.jpg
Для кодирования QR-кодов в Linux можно использовать утилиту qrencode (http://fukuchi.org/works/qrencode/index.en.html):
sudo apt-get install qrencode
или
sudo yum install qrencode
Кодируем текст из файла test.txt и сохраняем его в изображение test.png:
qrencode -r test.txt -o test.png
Другие системы кодирования и декодирования QR-кодов:
* pyqrcode
* libqr
* qrcode
* decodecamera
* ZXing Decoder Online
|