2010-04-02 5 views
20

나는 곧 진행될 프로젝트에 대해 약간의 예비 연구를하고 있으며, 나는 누군가에게이 경험이있는 경우를 대비하여 내가 다른 곳을 보면서 내가 여기서 던질 것이라고 생각한다는 간단한 질문을한다.자바 스크립트 QR 코드 리더 - 할 수 있습니까? 아니면 원격 서비스입니까?

질문은 간단합니다 : JavaScript를 사용하여 QR 코드를 읽을 수 있습니까? 카메라에서 비트 맵 객체를 전달할 수있는 원격 서비스가 있습니까? 현재 이것을 허용하는 라이브러리가 있습니까?

프로젝트가 다양한 모바일 장치에 배포 될 예정이며 Appcelerator를 사용하여 프로젝트를 작동 시키려고합니다. Appcelerator가 호스트 디바이스에서 Camera API를 노출 시키지만 QR 코드를 파싱 할 수 있어야합니다. 할 수있는 일인가요?

미리 감사드립니다. myk

+1

http://www.patrick-wied.at/static/qrgen/ – StefanoCudini

+0

@StefanoCudini 해당 사이트는 순수 js가 아닌 ZXing 원격 서비스를 사용하고 있습니다. –

+0

조금 늦었지만 안드로이드 및 iOS 전용 신뢰할 수있는 솔루션을 찾고 있다면이 대답을 확인할 수 있습니다 http://stackoverflow.com/questions/17652017/read-qrcode-from-a-web-page- with-camera/29665026 # 29665026 – maraca

답변

1

모바일 장치에서 JavaScript에 대한 메모리 제한 때문에 순수 JS로 가능할 경우 실제 사용에는 너무 오래 걸릴 수 있습니다.

Appcelerator API가 외부 네이티브 라이브러리와 어떻게 작동하는지 잘 모르겠지만 가장 좋은 방법은 이미지 데이터를 원시 코드 (Objective-C 또는 Java)로 전달한 다음 하위 수준 라이브러리 iphone-qrcode과 같이) QR 코드를 구문 분석 한 다음 결과를 JS 실행 컨텍스트로 다시 전달합니다.

원격 서비스에서 수행 할 수없는 오프라인 작업의 장점이 추가되었습니다.

+0

저의 이해는 Appcelerator가 샌드 박스 화되었으므로 저급 네이티브 기능에 액세스 할 수 없습니다. 그래서 나는 원격 서비스 호출이 갈 길이라고 생각하고있다. 그러나 이상하게도 나는 그것을 발견하지 못했다. 내 자신을 굴려야 할 수도 있습니다. – Myk

+0

문서를 살펴보면, 추가 네이티브 기능으로 appcelerator를 확장 할 수 있습니다. http://developer.appcelerator.com/doc/mobile/iphone/module_sdk – alunny

0

개념 증명을 원한다면 여기 - 순수한 자바 스크립트로 작성된 motion tracker입니다.

그러나 지원은 현재 널리 퍼지지 않았습니다. FF와 최신 웹킷 빌드 만 afaik를 지원합니다.

휴대 기기에이 기능을 사용하려는 것으로 나타났습니다. 그런 다음 절대적으로 원격 서비스를 이용하십시오. 심지어 가장 높은 엔드 디바이스에조차도 과언이 될 것입니다.

6

나는 그것이 가능하다고 생각하지만 도전이 될 것입니다. 누군가 AS3 library for reading QR codes을 작성했습니다. 나는 image manipulation in Canvas을 읽고부터 시작하겠습니다.

원격 API 경로를 사용하는 경우 Kaywa에 사용할 수있는 API가 있습니다.

+0

멋지다. 나는 원격 서비스 계획에서 벗어날 것이라고 생각한다. AS3을 JS로 이식하는 것이 가장 합리적 일 수 있습니다. 더 나은 것이 나오지 않으면 답변을 받아들입니다. 그런 경우에 나는 뻔뻔하게 동의를 철회 할 것입니다. ;) – Myk

+0

고마워! 타겟팅하는 휴대 전화가 Canvas를 지원하는지 확인하십시오. 아이폰과 안드로이드는 그렇게 생각한다. – dave1010

2

이미 자바 스크립트 library이 있지만 의견은 일본어로되어 있으며 문서가 없습니다.

2

getUserMedia API를 사용하여 웹캠에서 비디오를 가져와 캔버스 요소에 넣고 캔버스를 사용하여 픽셀을 읽고 QR 코드를 디코딩 할 수 있습니다.

QR 코드를 디코딩 할 라이브러리를 모르지만 바코드를 처리 할 수있는 one library입니다.