Определение размера флеш элемента

Статус
Закрыто для дальнейших ответов.

Felix

Друг форума
Регистрация
20.06.2009
Сообщения
1 097
Необходим скрипт для определения размера флеш элемента. Если использовать шаблон скажем 640 на 480 то из за разных размеров флеш элеметов становятся видны из задние фоны или просто чёрный фон от которого хотелось бы избавиться.
 

toxin

Well-Known Member
Регистрация
20.10.2009
Сообщения
478
ИМХО Просто вставляй его в середину страницы не указывая размера, и флешка будет ставиться со своими "стандартными для нее" размерами !

С уважением toxin...
 

trueW3C

Поклонник Yii
Регистрация
04.03.2009
Сообщения
847
http://www.sephiroth.it/swfreader.php
 

Felix

Друг форума
Регистрация
20.06.2009
Сообщения
1 097
Так код есть, а как сделать так чтобы он работал:)?
 

trueW3C

Поклонник Yii
Регистрация
04.03.2009
Сообщения
847
toxin , я не говорил использовать класс, открой его и посмотри как сделан метод определения размера...и повтори...
 

toxin

Well-Known Member
Регистрация
20.10.2009
Сообщения
478
Да я не только про класс, да и даже если кусок вырезать из класса, я вообще говорю, зачем узнавать ее(флехи) размер ?
Что бы потом этот размер вписать ? Это тоже самое что вставлять картинку, хотя на 99% сайтов картинка уменьшается двигом)
Вставляй ее просто в центр, флехи восновном размером идет 800 на 600 кажется ! Вот на это и расчитывай !
 

Felix

Друг форума
Регистрация
20.06.2009
Сообщения
1 097
Да я не только про класс, да и даже если кусок вырезать из класса, я вообще говорю, зачем узнавать ее(флехи) размер ?
Что бы потом этот размер вписать ? Это тоже самое что вставлять картинку, хотя на 99% сайтов картинка уменьшается двигом)
Вставляй ее просто в центр, флехи восновном размером идет 800 на 600 кажется ! Вот на это и расчитывай !
Не все флехи подходят под размер 800 на 600 некторые могут быть 400 на 600 скажем и в результате так как цвет заднего фона не задаётся на таких флешках получается чёрный фон или же куски картинок которые не обрезают создатели этих флешек. Вобщем получается не красиво. Вот и хотелось сделать размер стандартный 640 на 480 если размер другой то чтобы всё автоматом обрезалось.
 

trueW3C

Поклонник Yii
Регистрация
04.03.2009
Сообщения
847
Обрезалось это плохо...нужно вычислить пропорцию сторон и высчитать новую ширину или высоты...чтобы по бокам не появлялись полосы...
 

Felix

Друг форума
Регистрация
20.06.2009
Сообщения
1 097
Внимание, а теперь вопрос :)
Как это сделать ?
 

toxin

Well-Known Member
Регистрация
20.10.2009
Сообщения
478
:huh: киньте в меня кирпичь, но перед естим обьясните почему нельзя флеху просто вставить в центр страницы, и не устанавливать ей явных размеров, что бы она встала со своими ???
И еще, не слишком ли ты, Феликс заморачиваешься ?
Обратим внимание на www.flashplayer.ru все игры растягиваются, и админ не ломает по этому поводу головы, посещаемость у него очень приличная !
:dry: я не говорю что хрен с ним, пусть так остается, но может пока стоит подулать о более важных вещах ? Например о раскрутке, о наполнении, об оптимизации сайта для поисковиков ?

С уважением toxin...
 

trueW3C

Поклонник Yii
Регистрация
04.03.2009
Сообщения
847
Код:
<?php
$width = 400;
$height = 300;

$maxWidth = 300;

if($width > $maxWidth)
{
    $factor = $height / $width;

    $width = $maxWidth;
    $height = $width * $factor;
}
 

Felix

Друг форума
Регистрация
20.06.2009
Сообщения
1 097
киньте в меня кирпичь, но перед естим обьясните почему нельзя флеху просто вставить в центр страницы, и не устанавливать ей явных размеров, что бы она встала со своими ???
Если делать так то, флеха будет размером 50 на 50 проверено!

И еще, не слишком ли ты, Феликс заморачиваешься ?
Обратим внимание на www.flashplayer.ru все игры растягиваются, и админ не ломает по этому поводу головы, посещаемость у него очень приличная !
Его устраивает что у него всё через одно место, а я хочу сделать чтобы на мой сайт было приятно вернуться.

я не говорю что хрен с ним, пусть так остается, но может пока стоит подулать о более важных вещах ?
Например о раскрутке, о наполнении, об оптимизации сайта для поисковиков ?
Раскруткой занимаюсь. С оптимизацией вроде закончил я так думаю. Вроде всё норм во всяком случаее я так думаю. Наполнением тоже занимаюсь.

А поралельно со всем этим я по немногу выясняю как и что сделать чтобы было красивее и приятнее заходить ко мне в гости.

TiQ, это гдето в object вставить ? или где ? и как чтобы заработало.
 

trueW3C

Поклонник Yii
Регистрация
04.03.2009
Сообщения
847
Класс http://www.phpclasses.org/browse/file/6443.html

Код:
<?php
require ('swfheader.class.php') ;

$swf = new swfheader();
$swf->loadswf("test.swf");

$width = $swf->width;
$height = $swf->height;

$maxWidth = 300;

if($width > $maxWidth)
{
    $factor = $height / $width;

    $width = $maxWidth;
    $height = $width * $factor;
}
 

kein

Частный случай
Регистрация
23.11.2009
Сообщения
446
Высоту и ширину если не ошибаюсь можно определить через стандартный getimagesize, да и даже для swf
 

trueW3C

Поклонник Yii
Регистрация
04.03.2009
Сообщения
847
Никогда не слышал...
 

Creator

Administrator
Команда форума
Регистрация
03.03.2005
Сообщения
1 745
Никогда не слышал...
getimagesize так же определяет размер флешки.

Функция getimagesize() определяет размер изображения GIF, JPG, PNG, SWF, PSD, TIFF или BMP и возвращает размеры, тип файла и высоту/ширину текстовой строки, используемой внутри нормального HTML-тэга IMG.
Подробнее (правда этот ман оч.старый)

Внимание, а теперь вопрос
Как это сделать ?
Код:
<? 
$swf = 'flash.swf'; 
list($width, $height)=getimagesize($swf); 
echo $width, $height; 
?>
 

trueW3C

Поклонник Yii
Регистрация
04.03.2009
Сообщения
847
Внимание, а теперь вопрос
Как это сделать ?
Код:
$swf = 'flash.swf'; 
list($width, $height)=getimagesize($swf); 

$maxWidth = 300;

if($width > $maxWidth)
{
    $factor = $height / $width;

    $width = $maxWidth;
    $height = $width * $factor;
}
 

Felix

Друг форума
Регистрация
20.06.2009
Сообщения
1 097
Мучился, мучился с этим кодом и ничего не вышло и только с ПРОСТО ОГРОМНОЙ ПОМОЩЬЮ Creator'a удалось всёже сделать так чтобы эта адская машина заработал :biggrin:

Посматрел выглидит супер, но есть некоторые флешки размером 400на400 бывают. Как изменить условие так чтобы размер увеличивался до тех пор пока одна из величин width или height не станет 640, а вторая просто подгонится под эту величину.
 

trueW3C

Поклонник Yii
Регистрация
04.03.2009
Сообщения
847
Это только для подгона под ширину
Код:
$swf = 'flash.swf'; 
list($width, $height) = getimagesize($swf); 

$maxWidth = 640; //Нужная ширина
$factor = $height / $width; //Отношение сторон

if($width > $maxWidth)
    $height = $width * $factor;
elseif($width < $maxWidth)
    $height = $width / $factor;

$width = $maxWidth;

//$width и $height используем дальше
Под ширину и высоту
Код:
$swf = 'flash.swf'; 
list($width, $height) = getimagesize($swf); 

$demandedSize = 640;
$factor = $height / $width;

if($factor >= 1)
{
    if($height > $demandedSize)
        $width = round($demandedSize / $factor);
    elseif($height < $demandedSize)
        $width = round($demandedSize * $factor);
	
    $height = $demandedSize;
}
else
{
    if($width > $demandedSize)
        $height = round($demandedSize * $factor);
    elseif($height < $demandedSize)
        $height = round($demandedSize / $factor);
	
    $width = $demandedSize;
}
 
Статус
Закрыто для дальнейших ответов.
Верх Низ