Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Web программирование > WordPress и другие CMS
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 05.12.2011, 13:47   #1
mr.saalexander
Пользователь
 
Регистрация: 17.05.2011
Сообщений: 10
Восклицание Модуль JASlideshow

Привет. Тут недавно столкнулся с такой проблемой.
Есть сайт на CMS Joomla 1.6.
Есть страница портфолио, где используется модуль JA-Slideshow (Обычный модуль просмотра изображений).
Как я понял, в нем есть встроенная функция уменьшения изображений под заданный размер, который задается из админки (высота, ширина).
Вроде бы все хорошо, но эта функция уменьшает изображения просто обрезая их, а не сохраняя пропорции.
Сначала написал свою функцию

Код:
<?php
function resize_jpeg($un_file, $after_resize, $width){	//Функция уменьшения JPG
 
$SOURCE = $un_file;        // исходный файл
$TARGET = $after_resize;   // имя файла для "превьюшки"
$NEWX = 300;               // ширина "превьюшки"
$NEWY = 512;                 // высота "превьюшки"

$size = getimagesize($SOURCE);
if ($size === false) die ('Не возможно определить файл...');

  $source = imagecreatefromjpeg($SOURCE) or die('Не возможно открыть JPG файл');
				// вычисление пропорций 
				if ($size[0]>$size[1]){
				$ratio = $size[0]/$width;
				} else {
				$ratio = $size[1]/$width;
				}
				$X = round($size[0]/$ratio); 
				$Y = round($size[1]/$ratio);    
  // Создаем новое изображение
  $target = imagecreatetruecolor($X, $Y);
  
  // Копируем существующее изображение в новое с изменением размера:
    imagecopyresampled(
    $target,  // Идентификатор нового изображения
    $source,  // Идентификатор исходного изображения
    0,0,      // Координаты (x,y) верхнего левого угла
              // в новом изображении
    0,0,      // Координаты (x,y) верхнего левого угла копируемого
              // блока существующего изображения
    $X,     // Новая ширина копируемого блока
    $Y,     // Новая высота копируемого блока
    $size[0], // Ширина исходного копируемого блока
    $size[1]  // Высота исходного копируемого блока
    );
  imagejpeg($target, $TARGET, 100);
  return $TARGET;
  
  // Удаляем из памяти
  imagedestroy($target);
  imagedestroy($source);
  }
?>
и думал что все решится, но понял, что функция работает с уже уменьшенными заранее изображениями.
В общем вопрос к вам уважаемые программисты. Как настроить этот модуль на правильный ресайз.

Если будут нужны файлы. То вот они.
http://www21.zippyshare.com/v/28437967/file.html

mod_jaslideshow.php
- файл где обрабатываются настройки, установленные пользователем (как ширина, высота и прочая хрень)
default.php - файл вывода изображений на страницу.
default_articles.php - не совсем понимаю зачем он нужен.

mod_jaslideshow.php - сейчас работаю именно здесь, пытаюсь понять как устроено уменьшение изображений, и как устанавливается путь на папку с маленькими изображениями.
Прошу помощи. До последнего не хотел обращаться к Вам, но увы - не смог решить проблему своими силами.

Заранее спасибо
mr.saalexander вне форума Ответить с цитированием
Старый 29.07.2014, 16:24   #2
Dauren-kazakhstan
Новичок
Джуниор
 
Регистрация: 29.07.2014
Сообщений: 1
По умолчанию Решено

Сам искал по форумам, и ничего не нашел. Пришлось своими силами. Перейдем к делу:
в файле default_articles.php "освобождаем от комментариев" строчку 21, 22:
$helper->parseImages( $item, $params );
$list[$k] = $item;
и в сам материал вставляем такой код:
<!-- {jaimage main="путь к изображению/изображение.jpg" thumb="путь к уменьшенному изображению/изображение.jpg"} --> , эти изображения копируются в кэш модуля и дублируются в директорию /images/resized/ , т.е. если ты захочешь изменить картинку, тебе надо будет удалить дублированное изображение.
Ну все удачи. пример на сайте есть inepl.com
Dauren-kazakhstan вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Модуль в c++ Petrum Общие вопросы C/C++ 1 03.10.2011 13:00
Типизированные файлы, модуль Crt, Модуль Graph Kate_Fleur Помощь студентам 1 06.05.2010 17:43
МОДУЛь pahom Помощь студентам 2 23.04.2010 10:43
Модуль Alexsey1991 Помощь студентам 3 21.04.2010 16:49
Модуль Кссер Помощь студентам 1 18.04.2010 21:42