Кодирование небольших объемов информации.

Posted by

Добрый день!

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

Для справки:

Максимальное количество символов, которые помещаются в один QR-код:

  • Цифры — 7089
  • Цифры и буквы (включая кириллицу) — 4296
  • Двоичный код — 2953 байт
  • Иероглифы — 1817

 

И так начнём, подготавливим тестовый файл содержащий визитные данные:

ekzorchik@ub64amd:~$ nano vcard.txt

формат VCARD:

BEGIN:VCARD

FN:

TEL:

EMAIL:ekzorchik@yahoo.com

URL:http://www.ekzorchik.ru/

NOTE: Skype: ekzorchik, ICQ: 375-346-017

END: VCARD

 

Сохраним внесённые изменения «Ctrl + O» и выходим «Ctrl + X».

информация по нему:

ekzorchik@ub64amd:~$ file vcard.txt

vcard.txt: vCard visiting card

 

Теперь переходим собственно к установке утилиты которая будет производить кодирование нашей информации:

ekzorchik@ub64amd:~$ sudo aptitude install

The following NEW packages will be installed:

libqrencode3{a} qrencode

0 packages upgraded, 2 newly installed, 0 to remove and 385 not upgraded.

Need to get 42.0kB of archives. After unpacking 176kB will be used.

Do you want to continue? [Y/n/?] y

 

Создаем графический файл, содержащий QR-код с визитной информацией составленной выше:

ekzorchik@ub64amd:~$ cat vcard.txt | qrencode -s 4 -o vcard.png

информация по нему:

ekzorchik@ub64amd:~$ file vcard.png

vcard.png: PNG image, 228 x 228, 1-bit grayscale, non-interlaced

 

Используя файловый менеджер (в моем случае — это ), заходим в домашнюю директорию (/home/ekzorchik) и просматриваем созданный графический файл vcard.png:

Сформированная закодированная визитная карточка.

 

 

 

 

 

 

 

 

 

В последней команде число «-s обозначает размер изображения. Так, при заданном числе 4 размер изображения составит 228 х 228 px. Увеличивая или уменьшая данное число мы можем получить изображение желаемого размера.

 

К примеру размеры изображения:

при числе 1 размер составит 57 x 57 px

при числе 2 размер составит 114 x 114 px

при числе 3 размер составит 171 x 171 px

при числе 4 размер составит 228 х 228 px

С этим всё ясно. Для того чтобы сделать код со ссылкой на страницу моего блога:
ekzorchik@ub64amd:~$ qrencode -o ekzorchik.pnghttp://www.ekzorchik.ru/

 

Если изображение кажется маленьким

 

информация по нему:

ekzorchik@ub64amd:~$ file ekzorchik.png

ekzorchik.png: PNG image, 99 x 99, 1-bit grayscale, non-interlaced

,размер увеличиваем, как я выше показал c использованием параметра «-s«. В результате получится такой же код, но увеличенный в 10 раз.
ekzorchik@ub64amd:~$ qrencode -o ekzorchik.png -s 10 ‘http://www.ekzorchik.ru/’

 

информация по нему:

ekzorchik@ub64amd:~$ file ekzorchik.png

ekzorchik.png: PNG image, 330 x 330, 1-bit grayscale, non-interlaced

 

Наиболее полная информация по созданному графическому изображению:

ekzorchik@ub64amd:~$ exiftool ekzorchik.png

ExifTool Version Number : 8.15

File Name : ekzorchik.png

Directory : .

File Size : 391 bytes

File Modification Date/Time : 2012:10:26 09:59:34+04:00

File Permissions : rw-r—r—

File Type : PNG

MIME Type : image/png

Image Width : 330

Image Height : 330

Bit Depth : 1

Color Type : Grayscale

Compression : Deflate/Inflate

Filter : Adaptive

Interlace : Noninterlaced

Image Size : 330×330

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

Leave a Reply

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

1 × три =