Ниже приведены примеры выражений отчета для вопросов с изображениями и вложениями.
Для вопросов с изображениями можно задать размеры, чтобы обеспечить подходящий размер изображений в отчетах. Для этих выражений используется следующий формат:
${image1 | size:width:height:max_width:max_height}
Значения ширины и высоты управляют размером изображения и выражаются в пикселах. Хотя эти значения являются обязательными для выражения, использование значения 0 не ограничивает данный размер этого изображения. Например, в следующем выражении ширина изображения ограничивается 300 пикселами при сохранении соотношения сторон:
${image1 | size:300:0}
Значения максимальной ширины и высоты ограничивают максимальные размеры изображения и являются дополнительными. В следующем примере изображению принудительно задается ширина 300 пикселов, а высота ограничивается 200 пикселами:
${image1 | size:300:0:0:200}
В примерах ниже метод rotate используется для поворота изображения по часовой. Принимает значения от 0 до 360.
${image1 | size:300:0:0:200 | rotate:90}
У вопросов с изображениями также может быть информация об изображении, извлеченном и показанном в ответе. Это можно применить для показа имени файла и размера изображения следующим способом:
${image1 | getValue:"name"}
${image1 | getValue:"size"}
${image1 | getValue:"width"}
${image1 | getValue:"height"}
Этот же способ можно использовать для отображения данных EXIF из изображения, показывая информацию о времени и месте получения фото:
${image1 | getValue:"x"}
${image1 | getValue:"y"}
${image1 | getValue:"date"}
${image1 | getValue:"time"}
${image1 | getValue:"direction"}
Для отображения исходного изображения в полном размере и качестве, используйте выражение без методов или выражение getValue без значений:
${image1} или ${image1 | getValue:""}
В следующем примере для отображения исходного изображения с выбранным размером, но в полном качестве, используйте выражения getValue и size вместе:
${image1 | getValue:"" | size:300:0}
Примечание:
При настройке размера карты, наряду с использованием любого другого параметра, выражение size нужно разместить в конце выражения.
Даты и время хранятся как строки в данных EXIF, поэтому для вопросов даты и времени эти значения невозможно форматировать в отчете при помощи выражения format. Если важно форматировать эти значения, рассмотрите возможность выполнения извлечения EXIF как составляющей вашего опроса при помощи функции pulldata("@exif"). Более подробно см. Изображения.
Приведенные выше выражения getValue могут использоваться также для извлечения данных из всех допустимых свойств всех типов вложений, включая вопросы с изображениями, аудио и файлами. Есть следующие свойства, которые могут быть извлечены из всех вложений:
${file1 | getValue:"name"}
${file1 | getValue:"size"}
${file1 | getValue:"globalId"}
${file1 | getValue:"id"}
${file1 | getValue:"contentType"}
${file1 | getValue:"keywords"}
Чтобы отобразить изображение из интернета, укажите его исходный URL-адрес с помощью выражения src при ссылке на ключевое слово $image вместо имени вопроса:
${$image |
src:"https://upload.wikimedia.org/wikipedia/commons/1/13/Esri_Headquarters%2C_Building_Q.jpg"
| size:400:0}
Чтобы вернуть в ответ на один и тот же вопрос несколько изображений, используйте следующие заполнители, каждое из которых разместите в отдельной строке:
${#image1}
${$file}
${/}
Ключевое слово $attachment может быть использовано для перебора всех вложений текущего объекта:
${#attachment}
${$file}
${/}
Этот способ подходит для показа изображений в ArcGIS Enterprise версий до 10.8.1 или показа изображений, которые не были добавлены к объекту вне Survey123, где вложения не имеют значения для параметра ключевого слова. В следующем примере показаны имена файлов всех вложений объекта:
${#$attachment}
${$file|getValue:"name"}
${/}
Чтобы отобразить определенные вложения, используйте метод attachmentsDefExp, чтобы задать вложение:
${#image1 | attachmentsDefExp:"DATA_SIZE > "+1*1024*1024}...${$file}...${/}
${#$attachment | attachmentsDefExp:"Keywords = 'image1'"}...${$file}...${/}
${#$attachment | attachmentsDefExp:"CONTENT_TYPE like '%image%'"}...${$file}...${/}