Как нарисовать линию на экране камеры с помощью j2me? - PullRequest
1 голос
/ 04 мая 2009

В настоящее время я занимаюсь разработкой приложения для декодирования штрих-кодов с помощью мобильных телефонов.

У меня проблема с тем, как нарисовать линию или квадрат на экране камеры, чтобы легко захватить штрих-код.

Какой самый простой способ сделать это?

Ответы [ 2 ]

1 голос
/ 05 мая 2009

Вы можете сделать это, используя OverlayControl , предполагая, что ваши целевые устройства поддерживают его. Я думаю, что помню хороший пример на форумах разработчиков Sony Ericsson.

Редактировать: нашел это (не включает использование OverlayControl)

1 голос
/ 04 мая 2009

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

Если вы рисуете линию на экране, она будет отображаться под предварительным изображением.

Способ обойти это не слишком красиво. Вам нужно на самом деле захватить изображение с камеры. К сожалению, это означает захват файла JPEG или PNG в байтовый буфер. Затем вы загружаете это изображение с помощью Image.createImage и отображаете его на экране. Затем вы можете смело рисовать поверх этого.

Это также имеет нежелательный недостаток, так как дает вам ужасную частоту кадров. Возможно, вы захотите перечислить все возможные форматы файлов, которые вы можете записать, и попробовать их все, чтобы увидеть, какой из них наиболее быстрый.

...