Присоединяюсь к вопросу...
про единиый кошелек отзывы на различных ресурсах разнятся очень - если в пропорциях, то где то %60 отрицательных...
Я когда то нашел какие то начинания, почитал/подпилил и в итоге получилась такая функция. Она естественно адаптирована под мои нужды
function image_resize($filename, $smallimage, $w, $h) { // получим размеры исходного изображения $size_img = getimagesize($filename); // Если размеры меньше, то масштабирования не нужно if (($size_img[0]<$w) && ($size_img[1]<$h)) { return false; } // получим коэффициент сжатия исходного изображения $src_ratio=$size_img[0]/$size_img[1]; if ($src_ratio>=1) //горизонтальная картинка { $new_height=$h; $new_width=$new_height*$src_ratio; // создадим пустое изображение по заданным размерам $dest_img = imagecreatetruecolor($new_width, $new_height); $white = imagecolorallocate($dest_img, 255, 255, 255); if ($size_img[2]==2) $src_img = imagecreatefromjpeg($filename); else if ($size_img[2]==1) $src_img = imagecreatefromgif($filename); else if ($size_img[2]==3) $src_img = imagecreatefrompng($filename); // масштабируем изображение imagecopyresampled($dest_img, $src_img, 0, 0, 0, 0, $new_width, $new_height, $size_img[0], $size_img[1]); } else //вертикальная картинка { $new_width=$w; $new_height=$new_width/$src_ratio; $dest_img = imagecreatetruecolor($new_width, $new_height); $white = imagecolorallocate($dest_img, 255, 255, 255); if ($size_img[2]==2) $src_img = imagecreatefromjpeg($filename); else if ($size_img[2]==1) $src_img = imagecreatefromgif($filename); else if ($size_img[2]==3) $src_img = imagecreatefrompng($filename); // масштабируем изображение imagecopyresampled($dest_img, $src_img, 0, 0, 0, 0, $new_width, $new_height, $size_img[0], $size_img[1]); } // сохраняем уменьшенную копию в файл if ($size_img[2]==2) imagejpeg($dest_img, $smallimage); else if ($size_img[2]==1) imagegif($dest_img, $smallimage); else if ($size_img[2]==3) imagepng($dest_img, $smallimage); // чистим память от созданных изображений imagedestroy($dest_img); imagedestroy($src_img); return true; }
А вот ее использование
if (image_resize($avatar_file, $avatar_file_name_, 120, 160)) ...
А на страницу вывожу в ДИВе с размерами мне нужными (120 х 160 например) с
background-repeat: no-repeat;background-position: center;
а background-image ставлю преобразованную картинку
Согласен с этим, но опять же смотря какие цели преследовать (если типа для создания сетки сайтов, то проще копипастом по готовому скрипту конечно). Я задавался тоже как то целью такой - также искал готовый скрипт, но в итоге меня переубедили и предложили мне его написать...правда я его сам в итоге писать стал.. На данный момент вполне все работает, и именно с тем функционалом ктр мне нужен, а любой готовый скрипт также придется допиливать, и времени может на это уйти не меньше.
Выпущен небольшой патч для XTDesktop.
Обновление программа сама увидит, например, при ее запуске.
На здоровьице :)
Ну можно и наоборот сделать. Если сделать наоборот, то по сути будут на нем получаться очень маленькие числа в натуральной величине. Или у кого то он успевает проверять несколько УРЛов в секунду, при условии, что таймаут минимальный 1сек ?:)
Всем день добрый....
Сервис проверки траста xt в Яндексе стал доступен и в десктопном варианте. Рады представить вам приложение XTDesktop, которое вы сможете скачать отсюда.
Приложение конечно же распространяется абсолютно бесплатно и как есть.
Все баги, советы, пожелания, идеи и прочее можно отправлять разработчику, то бишь мне, в личку.
Кратенько скажу, что данное приложение предназначено для массовой проверки импортированных, или введенных вручную, URL-ов. Все полученные результаты вы сможете экспортировать в 4 формата - Excel, txt, html, xml.
Ну и прилагаю скрин доступной на данный момент версии.
Как то так еще можно
public function randomizer($min_digit, $max_digit, $count_digit) { // $max_digit = максимальное (до скольки) // $min_digit = минимально (с какого числа) // $count_digit = сколько выдать $random_arr = array(); // массив итоговый случайных чисел $tmp_arr=array(); // временный массив for ($i=0; $i<$count_digit; $i++) { do { $temp=rand($min_digit, $max_digit); } while(isset($tmp_arr[$temp])); $tmp_arr[$temp]=1; $random_arr[]=$temp; } unset($tmp_arr); return $random_arr; }
Ну и вызов:
$rand_digital = $this->randomizer(1,10,3);
Тут для чисел приведено. Не сложно перевести, допустим, на ключи массива строк.
Соц. опрос провожу :)...
А так вот вдруг пересечемся где-нить (деревня то наша маленькая), узнаю тебя (благо фоток в контакте навалом), вспомню про топик на серче...
Ну выбор не плох... Брау в Аэропорту особенно свежайший если - хорош...
И какое пиво пьют Архангельские СЕОшницы?