Оптимизация текста на картах и надписей для улучшения производительности
При назначении символов для текста на карте существует несколько вариантов улучшения производительности, учитывая факторы внешнего вида символа текста и используемого типа текста.
Как правило, использование аннотаций вместо надписей приводит к улучшению производительности. Так как надписи требуют от компьютера расчета их размещения, аннотации могут работать быстрее.
Если на карте находятся и аннотации, и надписи, учтите, что аннотации могут рассматриваться как препятствия для размещения надписей. В таких случаях задайте вес как "Нет" в установках разрешения конфликтов для групп аннотаций на карте. Однако, не устанавливайте все веса как "Нет"; они почти всегда могут понадобиться для получения хорошего результата при надписывании.
Ниже приведено несколько рекомендаций для поддержания производительности при использовании текста на карте.
Текстовые символы
Так же, как и с другими типами символов, чем меньше количество обрабатываемых задач, которые ArcMap выполняет в процессе отрисовки, тем быстрее будет прорисовываться карта. Здесь приводится несколько рекомендаций для поддержания хорошей производительности отрисовки текстовых символов:
- По возможности уменьшайте размер текста. Очень большие символы текста, больше 60 точек, приведут к увеличению времени прорисовки.
- Более сложные символы будут отрисовываться медленнее. Поэтому минимизируйте использование эффектов для текста, таких как линии выноски, смещения, гало, фон и заполнение узором.
- Вместо гало или масок предпочтительнее использовать тени. Тени можно добавить на закладке Оформление текста (Advanced Text) в диалоговом окне Редактора текстового символа (Text Symbol Editor).
Надписи
Здесь приводится несколько рекомендаций для поддержания хорошей производительности отрисовки надписей:
- Надписи будут прорисовываться быстрее, если текст для надписи хранится в одном поле в атрибутивной таблице слоя. Если из-за надписей карта отрисовывается медленнее, поработайте над упрощением SQL запроса и требований к размещению надписей.
- Выражение надписи замедляет выполнение отрисовки. В частности, избегайте использования скриптов выражения надписи для условного синтаксического разбора или форматирования строк надписей, или для объединения информации из нескольких полей в одной строке надписи. Вместо этого вычислите новое поле, содержащее всю необходимую информацию. В это поле можно включить теги форматирования.
- По возможности, следует индексировать поля, используемые в SQL запросах.
- Избегайте использования сложных SQL запросов при создании нескольких классов надписей.
- Умеренно используйте веса в конфликтах надписей и объектов. По возможности, оставляйте вес объектов не заданным, как "нет".
- Надписи по прямой отрисовываются быстрее, чем те, что следуют изогнутой линии.
- Эффекты надписей также уменьшают производительность. В разделе выше смотрите примеры оптимизации текстовых символов.
- Задавайте для надписей масштабно-зависимое отображение. При увеличении масштаба карты необходимо прорисовывать большее количество надписей, что занимает время. Изучите свою карту и решите, нужно ли отображать некоторые из надписей в меньших масштабах.
Если на карте находятся и аннотации, и надписи, учтите, что аннотации могут рассматриваться как препятствия для размещения надписей. В таких случаях задайте вес как "Нет" в установках разрешения конфликтов для групп аннотаций на карте. Но не устанавливайте все веса как "Нет"; они почти всегда могут понадобиться для получения хорошего результата при надписывании.
В механизме надписывания Maplex Label Engine более обширный набор опций для размещения надписей, чем в стандартном механизме надписывания Standard Label Engine. Дополнительные возможности размещения могут влиять на производительность. Однако можно конвертировать надписи, размещенные с помощью Maplex, в аннотации. Для ускорения динамических надписей используйте Стандартный механизм надписывания. Механизм надписывания можно выбрать на закладке Общие (General) в диалоговом окне Свойства фрейма данных (Data Frame Properties) или на панели инструментов Надписи (Labeling).
Аннотации
При создании аннотаций в ArcMap, сохранить их можно как аннотации документа карты в группе аннотаций, или как аннотации базы геоданных в классе объектов аннотаций базы геоданных. Более подробно о данных форматах и факторах производительности каждого, см. Сравнение групп аннотаций и аннотаций базы геоданных.