Для разбора и кодирования [[http://ru.wikipedia.org/wiki/QR-%D0%BA%D0... QR-кодов]] (оформленный в виде квадрата матричный код, состоящий из прямоугольных областей и способный содержать в себе несколько килобайт данных) в 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")
Декодируем содержимое QR-кода, содержащегося в изображении 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.jpg:
cat test.txt| qrencode -o test.jpg
Другие системы кодирования и декодирования QR-кодов:
* [[http://pyqrcode.sourceforge.net/ pyqrcode]]
* [[http://www.norisys.jp/libqr/ libqr]]
* [[http://qrcode.sourceforge.jp/ qrcode]]
* [[http://sourceforge.net/p/decodecamera/ decodecamera]]
* [[http://zxing.org/w/decode.jspx ZXing Decoder Online]]
URL:
Обсуждается: http://www.opennet.ru/tips/info/2565.shtml