Я делаю немного предварительных исследований по предстоящему проекту, и у меня есть быстрый вопрос, который, по моему мнению, я буду бросать сюда, пока я смотрю в другом месте, если у кого-то есть опыт с этим.
Вопрос прост: можно ли читать QR-код с помощью JavaScript? Есть ли удаленная служба, с которой я могу передать растровый объект из камеры и сделать это именно так? Есть ли в настоящее время библиотеки, которые позволяют это?
Проект будет развернут на различные мобильные устройства, и мы хотели бы попытаться использовать Appcelerator, чтобы он работал. Я знаю, что Appcelerator действительно предоставляет API-интерфейс Camera на своих хост-устройствах, но все, что мы делаем с ним, должно быть в состоянии разобрать QR-коды. Это что-то, что можно сделать?
Заранее спасибо! MYK
Держу пари, это возможно, но это будет непросто. Кто-то написал библиотеку AS3 для чтения QR-кодов . Я бы начал с чтения на манипуляции с изображениями в Canvas .
Если вы спуститесь по маршруту удаленного API, у Kaywa есть API, который вы сможете использовать.
Вы можете использовать API getUserMedia
для получения видео с веб-камеры, и вы можете поместить его в элемент canvas и использовать холст для чтения пикселей и декодирования QR-кода.
Я не знаю библиотеки для декодирования QR-кодов, но вот одна библиотека, которая может делать штрих-коды.
Уже есть библиотека javascript, однако комментарии в основном написаны на японском языке, и документации нет.
Из-за ограничений памяти для JavaScript на мобильных устройствах, это может занять слишком много времени для практического использования, если это возможно с чисто JS.
Я не знаю точно, как API-интерфейс Appcelerator работает с внешними родными библиотеками, но лучше всего передать данные изображения в собственный код (Objective-C или Java), а затем использовать библиотеку более низкого уровня (например, iphone-qrcode ), чтобы проанализировать QR-код, а затем передать результат обратно в контекст выполнения JS.
Это имеет дополнительное преимущество работы в автономном режиме, которую удаленная служба не могла сделать.
Если вы хотите доказательство концепции, то здесь это – трекер движения, написанный на чистом Javascript.
Тем не менее, поддержка для него сейчас широко распространена. Только FF и последние версии Webkit поддерживают его afaik.
Просто заметил, что вы хотите это для мобильного устройства. Тогда абсолютно пойдите с удаленным сервисом. Это будет действительно налогообложение даже на самых высоких устройствах, предполагая, что они даже поддерживают его, и я очень сомневаюсь.