ZaLinux.ru

Как создать QR-коды в командной строке Linux

QR-коды могут сделать гораздо больше, чем просто перенаправить вас на веб-сайт. А ещё их легко создавать в командной строке Linux. Мы покажем вам, как это сделать.

QR-коды

Коды быстрого ответа (QR) переживают возрождение благодаря их использованию в приложениях для отслеживания COVID-19 во многих странах. Это удобный способ поделиться информацией и вызвать отклик у людей. У каждого есть мобильный телефон, поэтому у всех есть подходящий сканер. Существует множество бесплатных программных приложений для сканирования QR-кодов и штрих-кодов, поэтому не требуется дополнительное оборудование и затраты на программное обеспечение.

С момента их изобретения в 1994 году высоко оценённой командой Denso Wave, дочерней компании Toyota, QR-код нашёл много новых применений.

QR-код может содержать гораздо больше информации, чем штрих-код, и благодаря его конструкции сканер может определить, где находится QR-код, и автоматически ориентировать изображение при его считывании и декодировании.

Эти характеристики сделали его таким успешным в его первоначальной роли отслеживания запасов, сборок и компонентов на заводских производственных объектах. Не имеет значения, если QR-код или предмет, к которому он прикреплён, не идеально выровнены, когда он проезжает по конвейерной ленте. QR-сканер может обнаружить и прочитать код независимо от его ориентации.

Почему бы не использовать онлайн-генератор QR-кода? Их много, но многие из них ставят условия, что им разрешено сохранять и хранить информацию, которую вы им предоставляете, и они могут делать с данными всё, что захотят. Если вы собираетесь создавать QR-коды с личной или конфиденциальной информацией, такой как контактные данные или данные о подключении к Wi-Fi, это создаёт значительную угрозу безопасности.

Все ваши данные остаются под вашим контролем, если вы используете инструмент командной строки, такой как qrencode. Он также позволяет создавать сценарии и псевдонимы для программного создания QR-кодов.

Связанная статья: QR-коды могут быть опасными

Использование QR-кодов

Вне заводов и производственной среды QR, вероятно, чаще всего используется в рекламной литературе, такой как листовки, брошюры и плакаты. Их также часто можно увидеть на упаковке продуктов. В этих сценариях QR-код обычно содержит унифицированный указатель ресурса (URL) или веб-адрес. Приложение для сканирования открывает веб-сайт для пользователя.

Когда вы сканируете QR-код своим мобильным телефоном, он определяет тип данных, которые были закодированы, и предлагает выполнить соответствующее действие. Например, если данные представляют собой событие календаря, вас спросят, хотите ли вы добавить событие в свой календарь.

QR-код может запускать следующие действия:

  • Отображение текста.
  • Навигация к точке на карте.
  • Телефонный звонок.
  • Отправка SMS-сообщения.
  • Отправка электронного письма.
  • Открытие URL-адреса для отображения веб-страницы или загрузки файла.
  • Добавление контакта в адресную книгу.
  • Добавление события в календарь.
  • Подключение к сети Wi-Fi.

Емкость QR-кода составляет до 7000 цифр или 4000 символов и отличается высокой надежностью.

Установка qrencode

qrencode — это универсальный, быстрый и многофункциональный генератор QR-кода. Он предоставляет библиотеку, которую можно связать с вашими собственными программами, чтобы инкапсулировать технологию генерации QR-кодов в ваши собственные приложения. Он также предоставляет утилиту командной строки, которую мы собираемся использовать.

Чтобы установить qrencode в Debain, Linux Mint, Ubuntu, Kali Linux и их производные выполните эту команду:

sudo apt install qrencode

На Arch Linux, Manjaro, BlackArch и их производных выполните:

sudo pacman -Sy qrencode

Чтобы установить qrencode в Fedora, используйте эту команду:

sudo dnf install qrencode

Параметры qrencode

Есть два разных набора параметров, которые нам нужно передать qrencode. Один набор относится к созданию и кодированию QR-кодов, а другой определяет данные, которые мы хотим, чтобы QR-код содержал.

Параметры, которые влияют на создание QR-кода, определяют такие вещи, как размер QR-кода, цвет клетчатого узора и фона, а также настройки исправления ошибок.

Назначение QR-кода — например, отправляет ли он SMS-сообщение или предлагает добавить контакт в адресную книгу — определяется информацией внутри QR-кода. Это не зависит от способа создания QR-кода. Ключевые слова и имена полей определяют тип закодированного контента и позволяют программному обеспечению сканирования определять, что ему следует делать с полученной информацией.

Использование qrencode

Обычный текст QR-коды

Самая простая форма QR-кода содержит простой текст. Его можно использовать для передачи конечному пользователю любой текстовой информации. Мы используем следующие параметры qrencode:

  • -s 6: устанавливает размер блоков в клетчатом шаблоне QR. Предоставляемое вами число задаёт размер в пикселях длины одной стороны блока.
  • -l H: устанавливает уровень исправления ошибок. Мы можем использовать следующие варианты: «L» для низкого, «M» для среднего, «Q» для довольно высокого и «H» для высокого или максимального. Различные уровни исправления ошибок могут справиться с разным объёмом повреждений или нечёткостью при сканировании QR-кода. «Низкий» позволяет успешно сканировать код, если до семи процентов кода скрыто или повреждено. «Средний» увеличивает этот показатель до 15 процентов. «Достаточно высокий» может справиться с повреждением до 25 процентов кода. «Высокий» уровень может справиться с колоссальными 30 процентами повреждений или неразборчивости при сканировании QR-кода. Чем больше исправлений ошибок вы используете, тем больше будет общий QR-код. Это связано с тем, что ему необходимо хранить избыточную информацию, что означает, что в шаблоне больше блоков.
  • -o "text.png": параметр вывода позволяет указать имя сгенерированного изображения. По умолчанию это изображение Portable Network Graphics (PNG). Если вы используете параметр -t (тип), вы можете изменить вывод на различные форматы, включая инкапсулированный постскрипт (EPS), масштабируемую векторную графику (SVG) и множество различных вариантов вывода на основе символов Американского национального института стандартов (ANSI).
  • Текст для кодирования предоставляется последним и заключён в кавычки.

Команда:

qrencode -s 6 -l H -o "text.png" "Этот тип QR содержит обычный текст. Этот текст отображается пользователю при сканировании QR-кода. Никакое другое действие автоматически не запускается."

Эта команда создаёт этот QR-код:

При сканировании текст извлекается и отображается в программе сканирования.

Приложение для сканирования предоставит несколько предложений, которые вы, возможно, захотите сделать. В этом случае — в этом конкретном приложении — вы можете выполнить поиск в Интернете по полученному тексту или выбрать, чтобы поделиться текстом с другими.

Добавление цвета

Параметры --foreground и --background позволяют вам установить цвета для шаблона QR-кода и фона. Вы можете указать цвет в шестнадцатеричном представлении цветовой модели RGB или восьмизначном шестнадцатеричном представлении цветовой модели RGBA.

Мы используем обозначение RGB. В Интернете есть удобные таблицы для поиска цветовых кодов. Передний план будет оттенком синего, а фон — белым.

qrencode -s 6 -l H --foreground="3599FE" --background="FFFFFF" -o "blue.png" "Этот QR-код будет бело-голубым."

QR-код создаётся в выбранном нами оттенке синего.

Он сканирует так же, как и любой другой QR-код. Если вы все же измените цвета, убедитесь, что у вас есть достаточный контраст между передним планом и фоном, чтобы приложения сканирования могли надёжно выделить клетчатый узор.

Сохранение местоположения в QR-коде

Вы можете легко сохранить местоположение чего-либо в QR-коде.

  • Информация, которую мы храним, должна начинаться с ключевого слова geo.
  • Используйте двоеточие «:», чтобы отделить ключевое слово от данных о местоположении.
  • Местоположение необходимо указывать в десятичных градусах.
  • Не оставляйте пробелов во всей строке и используйте запятую «,» между значениями широты и долготы.

Параметры qrencode такие же, как и раньше. Мы меняем назначение QR-кода, просто изменяя информацию, хранящуюся в нем.

qrencode -s 6 -l H -o "geo.png" "geo:12.459444,99.978611"

Это создаёт этот QR-код. Расположение — место на берегу моря в тропиках.

При сканировании пользователю предлагается возможность посмотреть местоположение на карте или проложить маршрут к нему.

Сохранение номера телефона в QR-коде

Чтобы сохранить номер телефона внутри QR-кода, используйте ключевое слово tel, двоеточие «:» и номер телефона без пробелов. Лучше не использовать дефисы и другие знаки препинания в числе, потому что некоторые приложения для сканирования могут запутаться. Вместо «(123) 456–7890» используйте «1234567890».

qrencode -s 6 -l H -o "phone.png" "tel: 5555555555"

Это QR-код, сгенерированный этой командой:

При сканировании приложение предлагает добавить этот номер в качестве контакта — вам нужно будет указать имя самостоятельно; другая опция — позвонить по номеру.

Отправка электронного письма с помощью QR-кода

Вы можете добавить информацию к QR-коду, чтобы приложение для сканирования предлагало отправить электронное письмо. Вы можете указать адрес электронной почты получателя, тему и текст сообщения.

qrencode -s 6 -l H -o "email.png" "mailto:proghoster@gmail.com?subject=Linux&body=Статьи по линуксу классные!"
  • Ключевое слово для использования — mailto с двоеточием «:», отделяющим его от адреса электронной почты.
  • Используйте «?subject=» для обозначения темы. Не ставьте пробелы перед или после флага «?subject=».
  • Используйте «&body=», чтобы определить содержание сообщения электронной почты. Не ставьте пробелы перед или после флага «&body=».

Это результирующий QR-код.

При сканировании приложение предлагает отправить электронное письмо или добавить адрес электронной почты в качестве контакта.

QR-код веб-сайта

Чтобы направить пользователя на веб-сайт или другой URL-адрес, используйте ключевое слово http или https, двоеточие «:» и веб-адрес без пробелов.

qrencode -s 6 -l H -o "URL.png" "https://zalinux.ru"

Эта команда создаёт этот QR-код.

При сканировании кода приложение предлагает открыть ссылку.

Отправка SMS или MMS-сообщения с помощью QR-кода

Форматы для отправки сообщения службы коротких сообщений (SMS) или службы обмена мультимедийными сообщениями (MMS) идентичны. Используйте ключевое слово smsto, двоеточие ":", номер телефона, запятую "," без пробелов, а затем тело сообщения.

qrencode -s 6 -l H -o "SMS.png" "smsto:5555555555,Это текст SMS-сообщения."

Эта команда создаёт этот QR-код:

При сканировании пользователь может отправить SMS или MMS-сообщение.

Подключитесь к сети Wi-Fi с помощью QR-кода

Можно закодировать детали сети Wi-Fi в QR-коде. Посетители могут сканировать QR-код, чтобы легко подключиться к гостевому Wi-Fi.

Ключевое слово — WIFI, за которым следует двоеточие «:» и несколько других параметров.

  • Т: Тип безопасности. Это может быть WEP, WPA или WPA2. Обратите внимание, что между буквой «T» и значением безопасности стоит двоеточие, а также точка с запятой «;» после настройки безопасности.
  • S: идентификатор набора услуг (SSID) сети Wi-Fi, проще говоря, имя Wi-Fi сети. Обратите внимание, что между «S» и SSID стоит двоеточие, а также точка с запятой «;» После SSID.
  • P: пароль или ключ безопасности сети Wi-Fi. Обратите внимание, что между буквой «P» и ключом безопасности стоит двоеточие, а также две точки с запятой «;» после пароля для входа в Wi-Fi сеть.

Команда:

qrencode -s 6 -l H -o "wifi.png" "WIFI:T:WPA;S:СЕТЬ;P:ПАРОЛЬ;;"

Поместите свой настоящий SSID и ключ безопасности там, где в команде стоят СЕТЬ и ПАРОЛЬ. QR-код выглядит так:

При сканировании QR-кода приложение предлагает подключиться к сети Wi-Fi или скопировать пароль в буфер обмена.

Добавление контакта с QR-кодом

Контактные данные в формате vCard могут быть добавлены к QR-коду и отсканированы в адресную книгу пользователя. Это устраняет риск опечатки. Можно сохранить много информации, поэтому лучше всего добавить детали в файл и перенаправить этот файл в qrencode.

Этот текст был добавлен в файл с именем «contact.txt».

BEGIN:VCARD
VERSION:2.1
N:MiAl
FN:Alexey Miloserdov
TEL;TYPE=voice,cell,pref:79051430000
TITLE:IT specialist
ORG:MiAl Consorcium
EMAIL:proghoster@gmail.com
URL:HackWare.ru
END:VCARD

Мы можем перенаправить этот файл в qrencode следующим образом:

qrencode -s 6 -l H -o "contact.png" < contact.txt

Создаваемый им QR-код содержит намного больше блоков в шаблоне кода, чем мы видели до сих пор. Это потому, что в шаблоне закодировано больше информации, и мы используем самый высокий уровень исправления ошибок.

Как и следовало ожидать, приложение для сканирования предлагает добавить его в качестве контакта. Но поскольку он обнаружил, что в информации есть номер телефона, он также предлагает позвонить по нему. Точно так же он также обнаружил адрес электронной почты и предлагает отправить электронное письмо.

Добавление календарного события с помощью QR-кода

Добавление события в календарь очень похоже на добавление контакта. Данные лучше всего добавлять в файл, который перенаправляется в qrencode.

Этот текст был добавлен в файл с именем «event.txt».

BEGIN:VEVENT
SUMMARY:Корпоративный пикник
DESCRIPTION:Развлечения, еда и игры на солнце
LOCATION:Eastwood Park
DTSTART:20210710T103000
DTEND:20210710T154500
END:VEVENT

Это было перенаправлено в qrencode следующим образом:

qrencode -s 6 -l H -o "event.png" < event.txt

Это QR-код, содержащий календарное событие:

Приложение для сканирования расшифровывает событие следующим образом:

Пользователь может добавить событие в свой календарь, нажав на значок «Добавить событие».

Так много применений

QR-коды можно разместить где угодно: в подписях электронной почты, в рекламной литературе, на плакатах, листовках, в виде наклеек на оборудовании, на веб-сайтах, на упаковке продуктов, на этикетках продуктов и т. д.

Они могут предоставлять всевозможную информацию или функции. QR-код на наклейке, прикреплённой к устройству, может открыть последнюю версию руководства по обслуживанию или руководства пользователя.

На плакате может быть QR-код, чтобы добавить мероприятие в ваш календарь, и ещё один QR-код, чтобы указать направление к месту проведения.

Все, что нужно, — это немного творчества, немного ноу-хау и qrencode.

Рекомендуемые статьи:

Оставить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *