Exemplo n.º 1
0
function loadItemImages($bigImgUrl, $smallImgUrl, $destName)
{
    if (file_exists(getNormImagePath($destName))) {
        print "Image already exists - {$destName}\n";
        return;
    }
    // Загрузка большого изображения
    $fName = loadImage($bigImgUrl, getNormImagePath($destName, false));
    if (PEAR::isError($fName)) {
        print "Can't load image: " . $fName->getMessage() . "\n";
        $fName = loadImage($smallImgUrl, getSmallImagePath($destName, false));
        if (PEAR::isError($fName)) {
            print "Can't load thumb image: " . $fName->getMessage() . "\n";
            return;
        }
        // Конвертирование в используемый нами формат
        $newName = replaceExt($fName, IMAGE_EXT);
        $img = Image_Transform::factory("GD");
        if (PEAR::isError($img)) {
            print $img->getMessage();
            return;
        }
        // Создание уменьшенного изображения
        $img->load($newName);
        // Если изображение больше стандартных размеров - обработать
        if ($img->getImageWidth() > MAX_WIDTH_THUMBIMAGE || $img->getImageHeight() > MAX_HEIGHT_THUMBIMAGE) {
            $img->scaleByX(MAX_WIDTH_THUMBIMAGE);
            $img->scaleByY(MAX_HEIGHT_THUMBIMAGE);
        }
        $img->save(getSmallImagePath($destName), IMAGE_EXT, 100);
        $img->free();
        // Удаление временного загруженного файла
        if (strcmp($fName, $newName) != 0) {
            unlink($fName);
        }
        return;
    }
    // Конвертирование в используемый нами формат
    $newName = replaceExt($fName, IMAGE_EXT);
    $img = Image_Transform::factory("GD");
    if (PEAR::isError($img)) {
        print $img->getMessage();
        return;
    }
    $img->load($fName);
    // Если изображение больше стандартных размеров - обработать
    if ($img->getImageWidth() > MAX_WIDTH_NORMIMAGE || $img->getImageHeight() > MAX_HEIGHT_NORMIMAGE) {
        $img->scaleByX(MAX_WIDTH_NORMIMAGE);
        $img->scaleByY(MAX_HEIGHT_NORMIMAGE);
    }
    $img->save($newName, IMAGE_EXT, 100);
    $img->free();
    // Удаление временного загруженного файла
    if (strcmp($fName, $newName) != 0) {
        unlink($fName);
    }
    // Создание уменьшенного изображения
    $img->load($newName);
    if ($img->getImageWidth() > MAX_WIDTH_THUMBIMAGE || $img->getImageHeight() > MAX_HEIGHT_THUMBIMAGE) {
        $img->scaleByX(MAX_WIDTH_THUMBIMAGE);
        $img->scaleByY(MAX_HEIGHT_THUMBIMAGE);
    }
    $img->save(getSmallImagePath($destName), IMAGE_EXT, 100);
    $img->free();
}
Exemplo n.º 2
0
function loadItemImages($bigImgUrl, $smallImgUrl, $destName)
{
    $oldFile = realpath(getNormImagePath($destName));
    if (file_exists($oldFile)) {
        unlink($oldFile);
    }
    // Загрузка большой картинки
    $fName = loadImage($bigImgUrl, "data/tmp/{$destName}");
    if (PEAR::isError($fName)) {
        print $fName->getMessage() . "\n";
        return $fName;
    }
    // Обработка большой картинки
    $newName = replaceExt(getNormImagePath($destName), IMAGE_EXT);
    resizeImage($fName, $newName, MAX_WIDTH_NORMIMAGE, MAX_HEIGHT_NORMIMAGE);
    // Обработка маленкой картинки
    $newSmallName = replaceExt(getSmallImagePath($destName), IMAGE_EXT);
    resizeImage($fName, $newSmallName, MAX_WIDTH_THUMBIMAGE, MAX_HEIGHT_THUMBIMAGE);
    unlink($fName);
}