Конструктор ::measure
Создание объекта на основе существующего графического файла.
^image::measure[файл]
^image::measure[имя_файла]
^image::measure[файл;опции]
^image::measure[имя_файла;опции]
Создает объект класса image, измеряя размеры существующего графического файла или объекта класса file в поддерживаемом формате. Поддерживаются GIF, JPEG и PNG, а начиная с версии [3.4.6] дополнительно поддерживаются TIFF, BMP, WEBP и при указании опции $.video(true) — еще и MP4 (MOV).
Сама картинка не считывается, основное назначение метода — определение размеров и, например, последующий вызов для созданного объекта метода html.
Параметры конструктора:
Файл — объект класса file;
Имя файла — имя файла с путем.
Можно задать хеш опций: [3.4.6]
Поддерживается EXIF 1.0, считываются теги из IFD0 и SubIFD.
Пример создания тега IMG с указанием размеров изображения
$photo[^image::measure[photo.png]]
^photo.html[]
Будет создан объект photo класса image на основе готового графического изображения в формате PNG и выдан тег <img …>, ссылающийся на данный файл, с указанием width и height.
Пример работы с EXIF-информацией
$image[^image::measure[jpg/DSC00003.JPG;
$.exif(true)
]]
$exif[$image.exif]
^if($exif){
Производитель фотоаппарата, модель: $exif.Make $exif.Model<br>
Время съемки: ^exif.DateTimeOriginal.sql-string[]<br>
Выдержка: $exif.ExposureTime секунды<br>
Диафрагма: F$exif.FNumber<br>
Использовалась вспышка: ^if(def $exif.Flash){^if($exif.Flash){да;нет};неизвестно}<br>
}{
нет EXIF-информации<br>
}