Next Generation CMS :: Форум поддержки

Заинтересовала наша система? Тогда этот форум для Вас!

rss

Вы не зашли.

Объявление

#1 2010-12-09 05:22:06

dzheker
Новичок
Зарегистрирован: 2010-11-20
Сообщений: 19
Рейтинг :   
Профиль

Как уменьшить сторонние изображения с фотохостинга

Добрый день .30 минут покапался на форуме но так и не пришел к нужному ответу.
А именно мне на сайт вставляют большие изображения.Из за этого сам сайт настолько растягивается что его вообще невидно. Ну вот и мне нужно чтоб человек к примеру если он вставил картинку с другого фотохостинга. (Именно что с другого а не на мой сайт). Так как на мой сайт нельзя заливать. Изображения уменьшалось до заданного параметра по ширине. Ну не превышала заданный параметр . Вот посмотрел тут на форуме нашел плагин Highslide JS  .Но из его описания я понял что картинки должны заливаться на свой сайт.Значит не подходит .

Есть ли какое то решения уменьшения этих картинок напишите пожалуйста и как . Спасибо

Неактивен

 

#2 2010-12-09 06:24:48

RocketBoy
Пользователь
Откуда: Калининград
Зарегистрирован: 2008-10-14
Сообщений: 552
Рейтинг :   27 
Профиль  Вебсайт

Re: Как уменьшить сторонние изображения с фотохостинга

dzheker, я бы сделал так. Прописал в css, максимальный размер изображения max-width, для div в котором выводится {short-story} и {full-story}
Пример news.full.tpl:

Код:

<div class="news">
<h2>{title}</h2>
<div class="telo">
{full-story}
</div>
</div>

В css добавляешь:

Код:

.telo img {max-width: 660px;}

Получится, что в твоей полной новости, максимальный размер изображения будет 660px. Ты пропиши исходя из своего дизайна, максимальную ширину и все будет ОК smile

Отредактированно RocketBoy (2010-12-09 16:04:31)

Неактивен

 

#3 2010-12-09 16:01:06

dzheker
Новичок
Зарегистрирован: 2010-11-20
Сообщений: 19
Рейтинг :   
Профиль

Re: Как уменьшить сторонние изображения с фотохостинга

RocketBoy написал:

dzheker, я бы сделал так. Прописал в css, максимальный размер изображения max-width, для div в котором выводится {short-story} и {full-story}
Пример news.full.tpl:

Код:

<div class="news">
<h2>{title}</h2>
<div class="telo">
{full-story}
</div>
</div>

В css добавляешь:

Код:

.telo img {max-width 660px:}

Получится, что в твоей полной новости, максимальный размер изображения будет 660px. Ты пропиши исходя из своего дизайна, максимальную ширину и все будет ОК smile

А можно понаглядней ??? Ну вот у меня есть кусок как его вставить то правильно то ???


    <br />[/update]{short-story} [more][/more] {full-story}<div style="padding: 10px; text-align:center;">

Отредактированно dzheker (2010-12-09 16:06:03)

Неактивен

 

#4 2010-12-09 16:06:11

RocketBoy
Пользователь
Откуда: Калининград
Зарегистрирован: 2008-10-14
Сообщений: 552
Рейтинг :   27 
Профиль  Вебсайт

Re: Как уменьшить сторонние изображения с фотохостинга

Ну вот у меня есть кусок как его вставить то правильно то ???

Тебе надо в style.css добавить, вот эту строку

Код:

.telo img {max-width: 660px;}

Неактивен

 

#5 2010-12-09 16:18:45

dzheker
Новичок
Зарегистрирован: 2010-11-20
Сообщений: 19
Рейтинг :   
Профиль

Re: Как уменьшить сторонние изображения с фотохостинга

А все спасибо понял как сделать . Молодец спасибо огромное  .


Я это {full-story}  поменял на это <div class="telo">{full-story}</div>

А в цсс добавил

.telo, img {
max-width : 500px;
}

И все работает как нужно

Отредактированно dzheker (2010-12-09 16:20:59)

Неактивен

 

#6 2010-12-09 17:18:35

d7p4x
Модератор
Зарегистрирован: 2008-10-13
Сообщений: 199
Рейтинг :   
Профиль  Вебсайт

Re: Как уменьшить сторонние изображения с фотохостинга

Мой вариант, заливаем скриптик:

Код:

function imgFit (img, maxImgWidth)
{
    if (typeof img.naturalWidth == 'underfined') 
    {
        img.naturalHeight = img.height;
        img.naturalWidth = img.width;
    }
    if (img.width > maxImgWidth) 
    {
        img.height = Math.round(((maxImgWidth)/img.width)*img.height); 
        img.width = maxImgWidth;
        img.title = 'Увеличить';
        img.style.cursor = 'move';
    } 
    else if (img.width == maxImgWidth && img.width < img.naturalWidth) 
    {
        img.height = img.naturalHeight;
        img.width = img.naturalWidth;
        img.title = 'Уменьшить :)';
    }
}

К картинкам дописываем, например это можно засунуть в обработку bbcode.

Код:

onLoad="imgFit(this, 500);" onclick="imgFit(this, 500);

Если картинки вставляются через ['img] то наверно в файл parse.class.php найти и заменить:

Код:

array_push($rdest, "<img ".(implode(" ", $outkeys)).' onLoad="imgFit(this, 500);" onclick="imgFit(this, 500) />');

Тогда картиночки красивенько будут уменьшаться и увеличиваться по клику.

Скрипт был в свое время выковырен с торы.

Неактивен

 

#7 2010-12-09 20:43:58

dzheker
Новичок
Зарегистрирован: 2010-11-20
Сообщений: 19
Рейтинг :   
Профиль

Re: Как уменьшить сторонние изображения с фотохостинга

Интересный вариант . А не могли бы поподробней про установку сиво суда рассказать. А то не совсем понятно .

Вот это куда вcтавлять в какой файл ????



d7p4x написал:

Мой вариант, заливаем скриптик:

Код:

function imgFit (img, maxImgWidth)
{
    if (typeof img.naturalWidth == 'underfined') 
    {
        img.naturalHeight = img.height;
        img.naturalWidth = img.width;
    }
    if (img.width > maxImgWidth) 
    {
        img.height = Math.round(((maxImgWidth)/img.width)*img.height); 
        img.width = maxImgWidth;
        img.title = 'Увеличить';
        img.style.cursor = 'move';
    } 
    else if (img.width == maxImgWidth && img.width < img.naturalWidth) 
    {
        img.height = img.naturalHeight;
        img.width = img.naturalWidth;
        img.title = 'Уменьшить :)';
    }
}

К картинкам дописываем, например это можно засунуть в обработку bbcode.

Код:

onLoad="imgFit(this, 500);" onclick="imgFit(this, 500);

Если картинки вставляются через ['img] то наверно в файл parse.class.php найти и заменить:

Код:

array_push($rdest, "<img ".(implode(" ", $outkeys)).' onLoad="imgFit(this, 500);" onclick="imgFit(this, 500) />');

Тогда картиночки красивенько будут уменьшаться и увеличиваться по клику.

Скрипт был в свое время выковырен с торы.

Вот это куда вcтавлять в какой файл ????


Код:

function imgFit (img, maxImgWidth)
{
    if (typeof img.naturalWidth == 'underfined') 
    {
        img.naturalHeight = img.height;
        img.naturalWidth = img.width;
    }
    if (img.width > maxImgWidth) 
    {
        img.height = Math.round(((maxImgWidth)/img.width)*img.height); 
        img.width = maxImgWidth;
        img.title = 'Увеличить';
        img.style.cursor = 'move';
    } 
    else if (img.width == maxImgWidth && img.width < img.naturalWidth) 
    {
        img.height = img.naturalHeight;
        img.width = img.naturalWidth;
        img.title = 'Уменьшить :)';
    }
}

====================

И во это 

Код:

onLoad="imgFit(this, 500);" onclick="imgFit(this, 500);

Не понятно



И вот это вот ,что на что менять ???


['img] то наверно в файл parse.class.php найти и заменить:

Код:

array_push($rdest, "<img ".(implode(" ", $outkeys)).' onLoad="imgFit(this, 500);" onclick="imgFit(this, 500) />');

Ну нужно понять что на что поменять и в какой файл чтоб это работало .

А так очень полезная вещь если конечно установить

Отредактированно dzheker (2010-12-09 20:55:48)

Неактивен

 

#8 2010-12-09 21:27:36

d7p4x
Модератор
Зарегистрирован: 2008-10-13
Сообщений: 199
Рейтинг :   
Профиль  Вебсайт

Re: Как уменьшить сторонние изображения с фотохостинга

JavaScript можно записать в файл, например main.js, закинуть его в папку на сервер /js/ подключить его в шаблоне main.tpl например так:

Код:

<script language="JavaScript" type="text/javascript" src="/js/main.js"></script>

Далее открываем файл engine\includes\classes\parse.class.php, находим там

Код:

array_push($rdest, "<img ".(implode(" ", $outkeys)).' />');

Заменяем на:

Код:

array_push($rdest, "<img ".(implode(" ", $outkeys)).' onLoad="imgFit(this, 500);" onclick="imgFit(this, 500);" />');

Думаю так.

Неактивен

 

#9 2010-12-10 21:53:46

dzheker
Новичок
Зарегистрирован: 2010-11-20
Сообщений: 19
Рейтинг :   
Профиль

Re: Как уменьшить сторонние изображения с фотохостинга

d7p4x   Спасибо .Все работает

Неактивен

 

Board footer

Powered by FluxBB

[ Generated in 0.007 seconds, 17 queries executed ]