Оформляя постер к очередной конференции SPIE, в рекомендациях наткнулся на желательность использования QR code в постерах. Раньше я думал, что это нужно только хитрым японцам для идентификации деталей на всяких промышленных объектах. Оказывается, что QR code теперь в моде и их суют куда надо и не надо. О том, что это такое и зачем надо, а так же как сгенерировать QR code в ЛаТеХе, можно
прочесть далее.
Что такое QR code?
QR это аббревиатура от Quick Response, а сам QR-code это двумерный штрих-код:который может хранить ссылки, обычный текст, SMS сообщения, URL и другую контактную информацию.
В двух словах, это такая бумажная гиперссылка. То есть не просто штрих-код, а содержащий куда больше информации идентификатор, и сканер может "кликнуть" по закодированной внутри ссылке. Переход по ссылке можно отследить, и так вы знаете, кто и где просканировал ваш код.
Создали QR-коды в Японии, где они первоначально использовались для отслеживания автомобильных деталей в процессе производства. Теперь ими маркируют документы и товары, чтобы иметь возможность определить, кто их сканировал и как часто.
Как сгенерировать QR Code в LaTeX?
Есть веб-сайты, которые могут это сгенерировать, но они выдают чаще всего растровые картинки. А так как постеры верстаются теперь в beamerposter, то хорошо бы это сделать в LaTeX.
Сделать это можно с помощью пакета pst-barcode, который доступен для загрузки отсюда. Так же следует установить латеховского пакета pstricks.
Далее создаём тестовый латеховский документ, в который вставляем следующее:
\documentclass{article}Приведённый выше пример закодирует фразу test string в такие вот хитрые квадратики:
\usepackage{pst-barcode}
\begin{document}
\begin{pspicture}(1in,1in)
\psbarcode{test string}{}{qrcode}
\end{pspicture}
\end{document}
Собственно, обратно расшифровать этот код тоже можно, но уже не ЛаТеХом, а веб-сайтом (например этим).
Надо сказать, что pst-barcode не любит pdflatex и компилировать текст нужно через DVI - PS - PDF типа:
latex 123.tex
dvips 123.dvi
ps2pdf 123.ps
При этом можно управлять параметрами кодирования и закодировать в QR code много чего интересного:
\begin{pspicture}(15mm,15mm) \psbarcode{MECARD:N:Visissualy,Poopkin;EMAIL:poopkin@rogaandcopyta.narod.ru;TEL:74950001111;NOTE:ceo roga copyta;}{eclevel=L}{qrcode}Так, можно управлять степенью избыточности при кодировании, что достигается параметром eclevel=L
\end{pspicture}
- eclevel=L - Low
- eclevel=M - Medium
- eclevel=Q - Quality
- eclevel=H - High
Для своего постера я использовал Medium уровень коррекции ошибок, и вот что получилось:
Разумеется, приведённый пример это только для затравки. Если дать волю фантазии, можно заделать небольшой макрос на ЛаТеХе и автоматически генерить QR code для каждого документа, подставляя значения из \title{}, \date{} и \author{} - и вообще всего, до чего дотянутся шаловливые ручонки. Так можно по обрывку титульной страницы выудить информацию о документе и, возможно, его авторе.
QR code online: веб-cервисы для создания и декодирования QR кодов
В эпоху вебдваноля, когда всё бессмыссленно и беспощадно переезжает в Веб, генерировать и расшифровывать QR code можно на веб-сервисах.
Где сгенерировать - QR code generator
Собственно, помимо ЛаТеХа, можно генерировать и в более простых веб-формочках. Замечательный обзор свободных генераторов QR кодов собрал 5 сайтов, из которых работают нормально в основном:
- http://qrickit.com/ - можно сгенерировать QRcode и даже отслеживать его.
- http://qrcode.good-survey.com/ - один из лучших сайтов по QR вообще (генерирует и расшифровывает).
- http://qr-coder.ru/
- http://qrcoder.ru/
Где распознать - QR code reader
Среди сайтов, которые могут прочесть все эти странные кодированные картинки, работают следующие:
- http://www.onlinebarcodereader.com/ - это только распознаёт (кодирования нет)
- http://qrcode.good-survey.com/ - генерирует и расшифровывает QR codes.
Былое и думы
Описание полей MECARD для QR кодов хорошо и с примерами описано тут. Охочим до официального формата просьба проследовать по ссылке. Желающие почитать про софт для Андроидов, способный распознавать QR коды, могут насладиться хорошим обзором. С настольным софтом для QR code всё несколько грустно, но ситуация может исправиться, когда Zint допилят до съедобного состояния.
16 комментариев: |высказаться!| RSS-лента дискуссии.|
самый простой способ получить qr код — google chart, вписывай что хочешь в URL и вперёд: https://chart.googleapis.com/chart?chs=150x150&cht=qr&chl=Hello%20world&choe=UTF-8
сохраняем png и используем с pdflatex/xelatex/luaчтотоновенькое
@Сергей комментирует...
сохраняем png и используем с pdflatex/xelatex/luaчтотоновенькое
Как раз хотелось бы узнать у Михаила: зачем так всё усложнять? Понятно, что pst-barcode на выходе даёт векторный EPS, который легко масштабируется по размеру постера. Но если QR - всё равно набор пикселей, то "зачем платить больше"?
кстати, ещё из неплохих онлайн-генераторов можно отметить http://qrcoder.ru/ и http://qr-coder.ru/
Опечатка: латеховского пакет pstricks.
За мануал спасибо, интересная информация.
> С настольным софтом для QR code всё несколько грустно.
По-моему, не стоит делать выводы по трёхлетней статье :-)
Есть консольный qrencode, к нему GUI финские парни пишут. Или нужны какие-то специфические фичи?
> http://qrcode.good-survey.com/ - генерирует и расшифровывает QR codes.
Там в разделе Decode используется Silverlight О_о
@Сергей комментирует...
самый простой способ получить qr код — google chart
Серж, оно не айс, мне ж в постер это вставлять.
@iv_vl комментирует...
Как раз хотелось бы узнать у Михаила: зачем так всё усложнять?
Хотелось это вставлять сразу в документ при рендеринге постера.
Но если QR - всё равно набор пикселей, то "зачем платить больше"?
Смотри на вещи шире. Так можно делать автоматические пометки документов в латехе. Ну и чтобы перегенерировать, каждый раз не надо лезть в эти ваши интернеты.
@goblinyara комментирует...
кстати, ещё из неплохих онлайн-генераторов можно отметить
О, спасибо за ссылки! Добавлено.
@engraver комментирует...
Опечатка: латеховского пакет pstricks.
Пофиксено.
За мануал спасибо, интересная информация.
Пожалуйста. Собственно, я постеры готовил и нашёл сие. Решил поделиться и самому потом быстрее найти.
@Dr.AKULAvich комментирует...
По-моему, не стоит делать выводы по трёхлетней статье :-)
Так ведь нету нифига, один навоз на джаве, который у меня так и не завёлся, сколько я ни бил в этот индийский бубен.
Есть консольный qrencode, к нему GUI финские парни пишут. Или нужны какие-то специфические фичи?
Ну, хочется настроек. Вот в этом латеховском варианте можно задать уровень коррекции ошибок, к примеру. Для простеньких кодов можно и на сайт слазить.
@Yurij комментирует...
Там в разделе Decode используется Silverlight О_о
Хм... странно, а у меня в дебиане работает. Может, ко мне какой микрософтский код просочился? :-)
Отличная статья! Про QR коды знал, но не знал что для LaTeXa есть тоже пакеты. Ну и коллекция ссылок на сайты полезная. Спасибо!
Немного не в тему, но требую статьи про настройки ifplugd + guessnet в debian, ибо боролся неделю но до конца не победил((( (смог только сделать ацкое быстрое подключение мегафон гпрс)
wicd и network manager не предлагать...
Как то запись сильно напоминает перепечатку с
http://gentoo.ru/node/23477
@coderoid комментирует...
Про QR коды знал, но не знал что для LaTeXa есть тоже пакеты.
Я тоже не знал, и по началу хотел вклеивать QR-картинки с веб-сервисов в постер. Потом подумал, что это как-то моветон и латех должен такое уметь. Собственно....
Ну и коллекция ссылок на сайты полезная. Спасибо!
Пожалуйста. Ссылок не так много, и там кое-где пропущены важные моменты.
@Анонимный комментирует...
Немного не в тему, но требую статьи про настройки ifplugd + guessnet в debian
Анонимус, а кто все эти люди?! :-)
Судя по названиям, это что-то сетевое, а моя гармошка такое плохо умеет играть :-)
до конца не победил
Ну если Анонимус не победил, значит дело серьёзное.
У меня нынче цейтнот, так что за идею поста, конечно, спасибо, но когда реализовать - не знаю. Может, Анонимус к тому времени всё победит.
@alexxy комментирует...
Как то запись сильно напоминает перепечатку с
http://gentoo.ru/node/23477
, я писал этот пост (и следующий, про визитку с QR) сам, и пользовался теми же ссылками, что и топикстартер на генте.ру. Когда гуглил в яндексе, оно мне не попалось. За ссылку спасибо, я её воткну в пост про визитку (он скоро будет).
Кстати, в руководстве по созданию визитной карточки автор упомянул свой андроид-смартфон, а здесь нет. А ведь он и распознает, и создаст qr-код не хуже онлайн сервисов, да и третьим лицам информация не передастся.
QR code становится все популярней, лавинообразно завоевывает рынок ритейла. масса интересных статей встретилась мне на одном из сайтов, http://qr.mid.ua/ , кажется...
Я слышала, что можно генерировать QR-код таким образом, чтобы когда сканируешь его не отображался просто сайт а сразу открывалась в интернете страничка этого сайта. Может быть есть знающие люди которые подскажут где и как это можно сделать?
А все-таки, как вставить кириллицу в qr-код, чтобы она потом правильно отразилась? Пробовал
\documentclass[a4paper,10pt]{article}
\usepackage[utf8]{inputenc}
\usepackage[russian]{babel}
\usepackage[T2A]{fontenc}
\usepackage{pst-barcode}
\begin{document}
\begin{pspicture}(1in,1in)
\psbarcode{MECARD:N:Пупкин,Вася;EMAIL:pupkin@mail.com;;}{eclevel=M height=1.15 width=1.15}{qrcode}
\end{pspicture}
\end{document}
Пробовал распознать полученную картинку на сайте
http://qrcode.good-survey.com/ , получил:
...
First name
T2ACYRV T2Acyra T2Acyrs T2Acyrya
...
Raw content from QR Code: MECARD:N:T2ACYRP T2Acyru T2Acyrp T2Acyrk T2Acyri T2Acyrn ,T2ACYRV T2Acyra T2Acyrs T2Acyrya ;EMAIL:pupkin@mail.com;;
Из гугления вынес что любой не английский текст является проблемой. Индонезийские товарищи прямо советуют преключиться на английский перед тем как в qr-код что-то писать...
Прошу прощения за неточность в коммент. от 16.11.2012, 15:55:00.
На сайте малазийских товарищей
http://latex-my.blogspot.ru/2011/08/barcodes-galore.html ,
вот в этом месте о языках и qr-коде:
http://latex-my.blogspot.com/2011/08/barcodes-galore.html?showComment=1314104295134#c6245453720153452832
Отправить комментарий