Автор: Габриэль Смит

Недавно мы с сыном проехали 1900 миль. Мы прилетели в Лас-Вегас, взяли напрокат кабриолет и поехали в Талсу, ОК, по шоссе 66 с множеством остановок по пути. Во время поездки я сделал около 500 фотографий на телефон, чтобы навсегда сохранить эти важные воспоминания. Придя домой, я начал просматривать все фотографии. (Почему я сделал так много?!) Иногда было трудно вспомнить, где именно я был, когда делал конкретный снимок. Чтобы помочь мне в этом процессе, я использовал LEADTOOLS в новом небольшом приложении WinForms, которое извлекает GPS-координаты, которые мой телефон хранит в тегах EXIF ​​​​фотографий. Затем он использует эти координаты с API Карт Google для отображения статической карты и маркера. В качестве дополнительного бонуса я добавил ссылку для открытия Google Street View на основе координат фотографии в веб-браузере по умолчанию и еще одну ссылку для открытия местоположения с помощью интерактивных карт Google в приложении.

https://www.leadtools.com/blog/wp-content/uploads/2017/07/PhotoLocationShower.mp4?_=1

Точки интереса

Веб-браузер Windows Forms

Элемент управления WinForms WebBrowser по умолчанию использует IE7.

Карты Google не оценят такой старый веб-браузер и откажутся загружать карту, но есть способ изменить версию, отредактировав реестр. Ознакомьтесь с комментариями в событии LabelStatusMapLink_Click для получения дополнительной информации. Даже после изменения Google Street View отказался нормально работать в элементе управления WebBrowser, поэтому я открываю его в браузере по умолчанию, а не в приложении.

GPS-координаты

Координаты хранятся как беззнаковые рациональные числа в четырех тегах. Два тега хранят градусы, минуты и секунды, а два других хранят полушарие соответствующей координаты. Для получения дополнительной информации ознакомьтесь с функцией ExifGpsToDouble в классе GpsTags.

Google Просмотр улиц

Google Street View предлагает несколько отличных функций. Во-первых, возвращение и получение контекста фотографии действительно вызвало несколько хороших воспоминаний. Кроме того, есть несколько мест, где вы действительно можете войти в здания. Чтобы убедиться в этом, посмотрите ссылку просмотра улиц на фотографии пива Mother Road Brewing во Флагстаффе, штат Аризона. Наконец, в Google Street View есть способ просматривать прошлые изображения местоположения, так что теперь я могу видеть, как местоположение менялось с течением времени. Фотография Weatherford, OK, сделана в Google Street Views до того, как были построены знаки Route 66 — предмет моей фотографии.

Получить код

Клонируйте, разветвляйте или загружайте код с GitHub: Git the Code

Идеи для других приложений

  • Веб-версия, которая интегрирует Google Drive. Я могу автоматически поделиться фотографией на Google Диске, когда она будет сделана, а веб-версия делает приложение более доступным.
  • Используйте SharpShell, чтобы создать обработчик предварительного просмотра Windows Explorer, чтобы отображать карту Google в окне предварительного просмотра Windows Explorer.
  • Я заметил, что некоторые файлы изображений не имеют GPS-координат, потому что они были обработаны в Instagram или другом приложении. Создайте обработчик контекстного меню Windows Explorer для копирования GPS из одного файла в другой.