Использование Гиперссылок
Гиперссылки позволяют осуществить доступ к документам и веб-страницам, связанным с пространственным объектом. Посмотреть их для каждого объекта можно при помощи инструмента Гиперссылка (Hyperlink). на панели Инструменты (Tools). В этом разделе рассказывается, как задать и применять свойства гиперссылок для слоя карты.
Гиперссылки должны быть заданы перед тем, как вы будете использовать инструмент Гиперссылка (Hyperlink), и они должны относиться к одному из этих трёх типов:
- Документ – Если щелкнуть на объекте инструментом Гиперссылка (Hyperlink), открывается документ или файл при помощи соответствующего приложения, например Microsoft Excel.
- URL – Если щелкнуть на объекте инструментом Гиперссылка (Hyperlink), открывается веб-страница в браузере.
- Скрипт – Если щелкнуть на объекте инструментом Гиперссылка (Hyperlink), значение объекта отправляется в скрипт. Эта опция позволяет использовать настраиваемое поведение.
Вы можете создавать гиперссылки для объектов слоя, используя Основанные на полях гиперссылки или определяя Динамические гиперссылки с помощью инструмента Идентифицировать (Identify).
Как альтернативный и часто более удобный вариант, можно применять инструмент, использующий HTML pop-ups. Щелчок на объекте вызывает дополнительную информацию и атрибуты при помощи HTML и веб-методов.
Определение свойств гиперссылок, основанных на значениях полей
- Щелкните правой кнопкой мыши на слое, для которого вы хотите задать свойства гиперссылок, и нажмите Свойства (Properties).
- Выберите закладку Отображение (Display) в диалоговом окне Свойства слоя (Layer Properties).
- Отметьте опцию Поддерживать гиперссылки, используя поле (Support Hyperlinks using field). Примечание:
Поле гиперссылки должно быть установлено ранее, чтобы вы могли указать его в этом диалоговом окне. Например, если вы желаете загружать определенные веб-страницы по щелчку на объект с включенным инструментом Гиперссылка (Hyperlink), то вам необходимо сначала добавить текстовое поле в таблицу атрибутов этого слоя, чтобы хранить в нем адреса URL, связанные с каждым объектом. Затем в диалоговом окне установить отметку Гиперссылка, выбрать поле в ниспадающем списке полей и включить опцию URL.
Значения выбранных вами для гиперссылок полей могут включать полный путь к документу или полный адрес URL к веб-странице. Значение может содержать имя документа или веб-страницы, а вы можете использовать свойство База гиперссылок (Hyperlink Base) для указания пути или URL к ним.
Часть адреса http:// можно не прописывать. Если вы хотите использовать другой протокол вместо http, то вы должны включить протокол в начало URL.
- Выберите имя поля, которое хотите использовать для гиперссылки, и тип ссылки – Документ (Document), URL или Скрипт (Script). Если вы выбираете скрипт, используйте кнопку Редактировать (Edit), чтобы написать скрипт на JScript или VBScript. Нажмите ОК.Примечание:
Это диалоговое окно позволяет создавать скрипт, который будет запускать гиперссылку. Скрипт должен быть написан по правилам языка скрипта, выбранного в ниспадающем списке Синтаксис (Parser). Ваш скрипт может включать любые допустимые выражения, поддерживаемые выбранным языком программирования.
Независимо от типа данных в источнике данных слоя имена полей заключаются в квадратные скобки []. Скрипт гиперссылки записывается как функция, которая может содержать программную логику и множество строк кода.
По умолчанию функции используют функцию ShellExecute, являющуюся частью библиотеки MSDN.
Эта информация находится на веб-страницах, созданных, поддерживаемых и принадлежащих корпорации Microsoft и Python Software Foundation. Esri не гарантирует доступность этих страниц и на несет ответственности за их содержание. - Нажмите OK или Применить (Apply) в диалоговом окне Свойства слоя (Layer Properties).
Определение динамических гиперссылок через результаты идентификации
При помощи инструмента Идентифицировать (Identify) можно динамически добавить гиперссылку к пространственному объекту. . В случае с динамическими гиперссылками, атрибутивное поле для их задания не используется. Задаваемая цель гиперссылки связывается с идентифицированным объектом. Это соединение хранится со слоем. Гиперссылки также сохраняются с вашим слоем, если вы его сохраняете в файл.
- Щелкните инструмент Идентифицировать (Identify). на панели Инструменты (Tools).
- Выберите объект, для которого вы хотите определить гиперссылку.
- Щелкните правой кнопкой мыши на объекте в окне Идентифицировать (Identify) и выберите Добавить гиперссылку (Add Hyperlink).
- Укажите нужную цель гиперссылки.
Установка База гиперссылок (Hyperlink Base) никак не влияет на динамические гиперссылки.
Вы можете указать любое количество динамических гиперссылок для любого объекта. Все динамические гиперссылки, указанные для объекта, перечисляются в открывающемся справа списке гиперссылки (Hyperlinks) в контекстном меню результатов идентификации (шаги 1–3 выше). Также доступны из меню Организовать гиперссылки (Manage Hyperlinks). Здесь вы можете добавлять или удалять любое количество динамических гиперссылок для этого объекта. Список не включает основанные на полях гиперссылки, и доступные команды также не действуют на них.
После удаления пространственных объектов из шейп-файла вы можете обнаружить, что динамические гиперссылки присоединились к другим пространственным объектам. Это происходит потому, что ArcMap использует поле-идентификатор пространственного объекта ID (FID) для связывания динамических гиперссылок с пространственными объектами, а FIDы шейп-файлов должны пересчитываться при удалении пространственных объектов. Чтобы гиперссылки всегда были связаны именно с правильными пространственными объектами, используйте динамические гиперссылки только для классов пространственных объектов баз геоданных (пространственные объекты базы геоданных всегда имеют уникальные значения ID). Основанные на полях гиперссылки можно использовать для шейп-файлов без этого ограничения.
Использование Гиперссылок
- На панели Инструменты (Tools) нажмите на инструмент Гиперссылка (Hyperlink). . Курсор примет вид стрелы молнии.Примечание:
Любой видимый объект на карте, для которого определена гиперссылка, будет отображен синим цветом или, если это полигон, будет обведен синим контуром. Когда курсор оказывается над объектом, для которого определена гиперссылка, указатель мыши принимает вид черной молнии, и вы видите вплывающую подсказку с названием ссылаемого элемента.
- Щелкните на нужном объекте или местоположении во фрейме данных, чтобы получить доступ к информации гиперссылки.
- Гиперссылка откроется, например в виде HTML веб-страницы. Если у объекта несколько гиперссылок, то ArcMap откроет всплывающее окно, содержащие список гиперссылок, при щелчке на объекте с включенным инструментом Гиперссылка (Hyperlink).
- Если же гиперссылки включены для нескольких слоев, то откроется диалоговое окно Гиперссылки (Hyperlinks), где можно выбрать пространственный объект одного из слоев. Имя слоя указано в круглых скобках.
Изменение цвета гиперссылки для объектов
При помощи настроек ArcMap можно задать цвет для отображения объектов с гиперссылками, выполнив следующие шаги:
- Щелкните пункт меню Настройка (Customize) > Опции ArcMap (ArcMap Options).
- Щелкните закладку Общие (General).
- Отметьте опцию При выборе инструмента гиперссылки, выделить объекты, содержащие ссылку (When the Hyperlink tool is selected, highlight features containing clickable content).
- Щёлкните на ниспадающем меню цвета, чтобы указать другой цвет выделения.
Управление путями гиперссылок
Можно задать базу гиперссылок, как часть свойств карты, – указать базовый путь или URL, используемый для основанных на полях гиперссылок на документы или URL. Например, если в качестве базы гиперссылок указано D:\Data, то в значениях гиперссылок на документы D:\Data уже не прописывается. Они должны содержать только имя файла. Использование этого свойства упрощает управление гиперссылками, поскольку при изменении целевого местоположения можно поправить только эту настройку, а не редактировать каждое значение в поле конечных гиперссылок.
Свойство База гиперссылок (Hyperlink Base) задается в диалоговом окне Свойства документа карты (Map Document Properties). Чтобы его открыть, нажмите Файл (File) > Свойства документа карты (Map Document Properties). Для документа карты задаётся одно свойство База гиперссылок (Hyperlink Base). Это свойство не влияет, если вы указываете, что целевые значения будут отправляться в макрос. Также оно никак не влияет на динамические гиперссылки.
Вы можете заменит правило по умолчанию, чтобы символ (/) не добавлялся автоматически. Вы можете найти эту настройку, запустив утилиту Дополнительные настройки ArcMap (Advanced ArcMap Settings) (<install drive>:\Program Files\ArcGIS\Desktop10.1\Utilities) и открыв закладку Разное (Miscellaneous). Замена правила по умолчанию помогает при работе с длинными путями и URL.
Например если вы желаете использовать основную настройку гиперссылок для длинных URL адресов, таких как, например этот:http://www.example.com/index.cfm?parameter=1234 – вам необходимо указать http://www.example.com как базовый и сохранить в поле гиперссылки все, что идет после index.cfm?parameter=1234. Но при изменении правила по умолчанию вы можете указать большую часть URL как базу http://www.example.com/index.cfm?parameter= и сохранять в поле гиперссылки лишь последнюю его часть1234.
Если вы изменяете правило по умолчанию, ArcMap будет также включать слэш, если в Свойствах документа карты (Map Document Properties) указано заканчивать гиперссылку символом слэша. Если вы измените правило по умолчанию, то вы можете добавлять слэш к гиперссылке вручную. Настройка изменения правила по умолчанию применяется только к вашей машине и не сохраняется как свойство в документе карты, с которым вы работаете.
Создание гиперссылок с относительными путями
Иногда приходится создавать карту с гиперссылками для кого-нибудь, у кого нет доступа к вашим сетевым ресурсам. Точно так же, как вы сохраняете карту с относительными путями к данным, можно указать гиперссылки, которые ссылаются на местоположение относительно документа карты.
Чтобы указать путь к документу в этой же папке, введите имя документа. Например для рисунка ниже, можно напечатать directions.bmp (то есть, не включать\или префикс с именем диска).
Чтобы указать путь к папке, идущей сразу глубже местоположения карты в файловой системе, начните путь с имени папки (здесь тоже нет \ или префикса с именем диска). В примере ниже, надо ввести Graphics\directions.bmp.
Использование параметров, контролирующих, как программа открывает документы гиперссылок
Гиперссылки на документы могут содержать параметры, определяющие, как программа открывает документы. Например, параметры могут сообщать Adobe Reader, что документ PDF надо открыть на определенной странице, позволяя пространственным объектам карты ссылаться на разные страницы одного и того же документа. Так как у программных пакетов (Microsoft Word, Microsoft Excel, Adobe Reader и т.д.) свои собственные команды, обратитесь к документации по данному программному продукту, чтобы найти параметры и их корректный синтаксис.
Очень часто эти параметры предоставляются для использования в командной строке. Например, чтобы открыть документ .PDF на пятой странице, командная строка должна выглядеть так:
- C:\Program Files\Adobe\Reader 8.0\Reader\AcroRd32.exe /A Page=5=OpenActions c:\temp\PopulationData.pdf
, где
- C:\Program Files\Adobe\Reader 8.0\Reader\AcroRd32.exe – это местоположение программного обеспечения; /A Page=5=OpenActions - параметр открывания; и c:\temp\PopulationData.pdf – местоположение файла.
ArcGIS не считывает эти параметры как командная строка. Вместо этого используется специальный ограничитель,а ? (знак вопроса), отделяющий путь к файлу от параметра. Гиперссылка на тот же документ и страницу в ArcGIS выглядит так:
- c:\temp\PopulationData.pdf ?/A Page=5=OpenActions
Знак "?" служит разграничителем пути и параметра.
Дополнительная функциональность для гиперссылок
Основанные на полях гиперссылки поддерживают системный и пользовательский уровень Windows переменной среды, когда они используются с инструментом Идентифицировать (Identify). Переменные среды должны устанавливаться на компьютере приоритетно к использованию для гиперссылок. Чтобы применять переменные среды в ArcGIS, вам потребуется указать переменность со знаком $, а не %. Например пишите $VARTEST вместо %VARTEST%.
вы можете создать объект отправки в вашем коде скрипта, чтобы вызвать функции из пользовательской библиотеки. Это позволяет обращаться к ArcObjects через скрипт вашей гиперссылки посредством объекта отправки. В дополнение вы можете передавать IFeature и/или IFeatureLayer с объектом отправки при запуске гиперссылки у соответствующего объекта.
Пример скрипта гиперссылки, который создаёт объект отправки
обращение к ArcObjects через скрипт вашей гиперссылки посредством объекта отправки
Function OpenLink ( {IFEATURE}, {IFEATURELAYER} )
Dim hlauncher
Set hlauncher = CreateObject("Hyperlink_Lib.Launcher")
hlauncher.Launch {IFEATURE}, {IFEATURELAYER}
End Function
Этот пример будет вызывать функцию Загрузка Launch из библиотеки Hyperlink_Lib, которую вы создали.