Краткая информация
Предоставляет доступ к свойствам рисунка, которые позволяют переместить рисунок компоновки страницы, а также задать и получить источник данных.
Обсуждение
Объект PictureElement представляет растр или изображение, вставленное в компоновку страницы. Метод listElements для Layout возвращает список Python объектов элементов компоновки страницы. Затем необходимо пройти по всем элементами списка в цикле или указать номер индекса для ссылки на определенный объект элемента страницы. Чтобы получить список только PictureElements, используйте константу PICTURE_ELEMENT для параметра element_type. wildcard также может быть использована для дальнейшей настройки поиска на основе элемента name.
Положение элемента X, Y базируются на положении якорной точки элемента.
У объекта PictureElement есть свойство sourceImage, позволяющее читать источник или указать новое расположение рисунка. Если вы планируете заменить рисунок на изображения с различными размерами и соотношениями сторон, создайте документ карты с рисунком с высотой и шириной, представляющими полную область, которую должны занимать все другие рисунки в компоновке страницы. Если рисунок заменяется с помощью свойства sourceImage и у рисунка другое соотношение сторон, он будет размещен в площади исходного рисунка с использованием наибольшего размера. Замененные рисунки никогда не будет больше изначального размера. Вы также можете задать позицию якоря, чтобы все новые рисунки размещались относительно этой позиции. Если вы не хотите, чтобы рисунки были скошенными, выберите опцию Сохранять пропорции (Preserve Aspect Ratio).
Примечание:
Картинки всегда хранятся в проекте. Свойство sourceImage показывает исходное расположение источника на момент, когда рисунок был вставлен. Файл может быть удален с диска, однако картинка все равно будет отображаться в компоновке.
Свойства
Свойство | Описание | Тип данных |
elementHeight (чтение и запись) | Высота элемента в единицах страницы. Единицы измерения задаются или считываются в единицах страницы. | Double |
elementPositionX (чтение и запись) | x-положение рисунка позиции точки якоря элемента. Единицы измерения задаются или считываются в единицах страницы. | Double |
elementPositionY (чтение и запись) | y-положение рисунка позиции точки якоря элемента. Единицы измерения задаются или считываются в единицах страницы. | Double |
elementRotation (чтение и запись) | Угол поворота элемента в градусах. Положительные значения поворачивают по часовой стрелке, а отрицательные – против часовой стрелки. | Double |
elementWidth (чтение и запись) | Ширина элемента в единицах страницы. Единицы измерения задаются или считываются в единицах страницы. | Double |
locked (чтение и запись) | Если установлено значение True, элемент нельзя выбрать графически в виде компоновки. | Boolean |
name (чтение и запись) | Имя элемента. | String |
sourceImage (чтение и запись) | Текстовая строка, представляющая путь к источнику данных рисунка. | String |
type (только чтение) | Возвращает PICTURE_ELEMENT. | String |
visible (чтение и запись) | Возвращает True, если элемент является видимым в компоновке. Вместо того, чтобы перемещать ненужные объекты со страницы перед печатью или экспортом, вы можете включать и выключать видимость элемента. | Boolean |
Пример кода
Следующий скрипт ищет рисунок по имени и задает новое расположение источника данных.
import arcpy
aprx = arcpy.mp.ArcGISProject(r"C:\Projects\YosemiteNP\Yosemite.aprx")
lyt = aprx.listLayouts("Main Attractions")[0]
pic = lyt.listElements("PICTURE_ELEMENT", "logo")[0]
pic.sourceImage = r"C:\Projects\YosemiteNP\yoslogo.png"
aprx.save()
del aprx