Сделайте снимок в WPF с помощью стандартного приложения камеры в Windows 8
Меня попросили разработать программное обеспечение для vb.net, и одной из его функций должна быть возможность делать фотографии на планшетном ПК. Я уже поиграл с MediaCapture API, который возвращает мне фотографию, но, как мне кажется, невозможно отобразить предварительный просмотр или что-либо еще вне приложений ModernUI. Это просто чистая фотография.
Я немного подумал, как решить эту проблему. Тогда я получил вдохновение от своего телефона на Android. Моя идея состояла в том, чтобы вызвать какой-то API, чтобы открыть обычное приложение камеры Windows 8 в режиме ModernUI, позволить пользователю сделать фотографию, а затем получить ее через "возвращаемое значение", как вы обычно делаете это в приложениях для Android.
Теперь мой вопрос: если есть способ запустить приложение камеры по умолчанию для Windows 8, позвольте ему сделать фотографию и получить ее обратно в настольное приложение WPF.
Я мог бы также разработать свое программное обеспечение как приложение ModernUI, но я никогда этого не делал, и, похоже, вы должны опубликовать его через интернет-магазин, но я хочу использовать его только в своей компании.
Моя другая (простая глупость) идея - попросить пользователя самостоятельно открыть приложение камеры, сделать несколько фотографий и вернуться к моему программному обеспечению позже. Затем я мог бы получить изображения из папки, в которой они хранились. Думаю, это тоже подойдет, но мне не очень нравится эта идея, потому что она не очень интуитивна и кажется просто глупой.
Если у вас есть идея (или альтернатива), я был бы очень рад, если бы вы могли поделиться ею со мной.
Заранее спасибо!
1 ответ
К сожалению, нет классов.NET, которые позволили бы вам получить доступ к веб-камере или встроенной камере на вашем компьютере. Это означает, что вы должны взглянуть на собственный API Windows и вызвать его из своего приложения. Я не могу указать вам правильные методы, которые вы должны использовать, поскольку я только что использовал Microsoft Media Foundation для захвата непрерывного потока изображений с веб-камеры и кодирования его в видеофайл.
Есть несколько сайтов, которые инкапсулируют эту нативную функциональность в классах.NET, но я не знаю, хороши они или нет:
- http://dotnet.dzone.com/articles/using-webcam-wpf-application
- http://www.yiigo.com/guides/vbnet/how-to-process-image.shtml
- (просто Google для больше, если вы хотите).
В приложениях Магазина Windows эту задачу можно относительно легко выполнить с помощью упомянутого API захвата мультимедиа. Вы также можете загружать приложения Магазина Windows с боковой стороны, если у вас Windows 8 Pro или Enterprise - тогда вам не нужно публиковать свое приложение в Магазине Windows.
Если у вас есть дополнительные вопросы, пожалуйста, не стесняйтесь спрашивать.