aurigma условное изменение размера
Здравствуйте! Я использую загрузчик изображений на основе Java под названием aurigma и настраиваю его с помощью php-кода.
У меня есть несколько вариантов изменения размера, которые можно установить по ширине или высоте.
Я хочу сделать проверку, где я говорю:
If ((image I am uploading width) > (image I am uploading height)){
$converter->setThumbnailFitMode("Width");
}else{
$converter->setThumbnailFitMode("Height");
}
Как проверить размер файла, который я загружаю в aurigma, и установить условия, основанные на этом. т.е.
2 ответа
Если вам нужно установить конвертеры во время выполнения, вам нужно будет установить два дополнительных события загрузчика aurigma: 1.BeforeUpload и 2. BeforePackageUpload:
uploader = new Uploader('Uploader1');
...
$uploader->getClientEvents()->setBeforeUpload("BeforeUpload");
$uploader->getClientEvents()->setBeforePackageUpload("BeforePackageUpload");
...
Затем реализуйте код событий в блоке Javascript (script type = "text/javascript").
Вам нужно будет получить ширину и высоту всех изображений, добавленных на панель загрузки, и поместить эти значения в массивы. В BeforePackageUpload вы должны взять значения ширины и высоты каждого файла и сравнить их, чтобы установить необходимый режим подгонки конвертера:
//set new arrays
var widths = [];
var heights = [];
function BeforeUpload() {
var uploader = $au.uploader('Uploader1');
count = uploader.files().count();
for (i = 0; i < count; i++) {
widths[i] = uploader.files().get(i).width();
heights[i] = uploader.files().get(i).height();
}
}
function BeforePackageUpload(index) {
var uploader = $au.uploader('Uploader1');
if (widths.shift() > heights.shift()) {
uploader.converters([{
mode: '*.*=Thumbnail',
thumbnailFitMode: 'Width',
thumbnailWidth: 500,
thumbnailHeight: 300,
thumbnailJpegQuality: 100
}]);
}
else
{
uploader.converters([{
mode: '*.*=Thumbnail',
thumbnailFitMode: 'Height',
thumbnailWidth: 300,
thumbnailHeight: 500,
thumbnailJpegQuality: 100
}]);
}
}