Модераторы: skyboy, MoLeX, Aliance, ksnk
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Работа с изображениями 
:(
    Опции темы
Ground
Дата 30.9.2006, 04:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 321
Регистрация: 27.2.2006
Где: Комсомольск

Репутация: нет
Всего: 1



Как наложить друг на друга 2 изображения?
Можно ли автоматически обрезать изображение и уменьшить, с последующим сохранением в файл?
Какая функция используется для сохранения файлов на сервер (с помощью элемента формы file)?
PM MAIL ICQ   Вверх
ZlojEzh
Дата 30.9.2006, 08:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 285
Регистрация: 8.10.2005
Где: Киев, Украина

Репутация: 10
Всего: 15



imagecreate/imagecopyresampled
аналогично + imagejpeg (imagepng, ...)
move_uploaded_file()

Добавлено @ 08:46 
прогнал немного
для наложения изображений лучше использовать функцию imagemerge
PM MAIL ICQ   Вверх
Ground
Дата 30.9.2006, 11:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 321
Регистрация: 27.2.2006
Где: Комсомольск

Репутация: нет
Всего: 1



Про imagemerge я ничего не нашел...
Как выводить в браузер результат imagecopy?
PM MAIL ICQ   Вверх
ZlojEzh
Дата 30.9.2006, 13:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 285
Регистрация: 8.10.2005
Где: Киев, Украина

Репутация: 10
Всего: 15



сорри, описка... imagecopymerge
Код

  header("Content-type: image/jpeg");
  imageJpeg($img);

при этом следить за тем, чтобы скрипт не выводил ничего лишнего (новые строки в конце файла, варнинги и т.д.), иначе картинка не отобразится
PM MAIL ICQ   Вверх
Ground
Дата 1.10.2006, 09:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 321
Регистрация: 27.2.2006
Где: Комсомольск

Репутация: нет
Всего: 1



Пишет Warning: imagejpeg(): supplied argument is not a valid Image resource in z:\home\localhost\www\gui.php on line 6
Код:
Код

<?php
$image = ImageCreateFromJpeg('Z:\home\localhost\www\11.jpg');
$image1 = ImageCreateFromJpeg('Z:\home\localhost\www\12.jpg');
$q = imagecopy($image1, $image, 10, 10, 0, 0, 350, 350);
  header("Content-type: image/jpeg");
  imageJpeg($q);
?>

PM MAIL ICQ   Вверх
ZlojEzh
Дата 2.10.2006, 16:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 285
Регистрация: 8.10.2005
Где: Киев, Украина

Репутация: 10
Всего: 15



<?php
  $image = ImageCreateFromJpeg('Z:\home\localhost\www\11.jpg');
  $image1 = ImageCreateFromJpeg('Z:\home\localhost\www\12.jpg');
  imagecopy($image1, $image, 10, 10, 0, 0, 350, 350);
  header("Content-type: image/jpeg");
  imageJpeg($image1);
?>
imagecopy копирует изображение $image в image1
а возращает bool, а не хендл картинки
PM MAIL ICQ   Вверх
Ground
Дата 3.10.2006, 07:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 321
Регистрация: 27.2.2006
Где: Комсомольск

Репутация: нет
Всего: 1



Огромное спасибо за помощь!
А как насчет быстродействия? Если сделать к примеру 40 наложенных друг на друга картинок? Не будет страница тормозить?
PM MAIL ICQ   Вверх
Ground
Дата 3.10.2006, 11:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 321
Регистрация: 27.2.2006
Где: Комсомольск

Репутация: нет
Всего: 1



Еще: Написал цикл, для вывода картинок, с измененым размером. Выводит только первыю картинку. Потом останавливается. В чем проблема?
Код

<?php
$var = 402;
echo("<table>");
for ($i = 10; $i <= $var; $i++)
   {
echo("<tr><td>");
$filename = 'gothic3-'.$i.'.jpg';

$width = 160;
$height = 120;

header('Content-type: image/jpeg');

list($width_orig, $height_orig) = getimagesize($filename);

$image_p = imagecreatetruecolor($width, $height);
$image = imagecreatefromjpeg($filename);
imagecopyresampled($image_p, $image, 0, 0, 0, 0, $width, $height, $width_orig, $height_orig);

imagejpeg($image_p, null, 100);
echo("</tr></td>");
}
echo("</table>");
?>


Это сообщение отредактировал(а) Ground - 3.10.2006, 11:29
PM MAIL ICQ   Вверх
ZlojEzh
Дата 3.10.2006, 18:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 285
Регистрация: 8.10.2005
Где: Киев, Украина

Репутация: 10
Всего: 15



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

картинка должна формироваться отдельным скриптом
а адрес этого скрипта должен вписываться в img src

приблизительно так:

Код

  $var = 402;
  echo("<table>");
  for ($i = 10; $i <= $var; $i++) {
    echo("<tr><td>");
    echo("<img src='gothic_image.php?i=".$i."'>");
    echo("</tr></td>");
  }
  echo("</table>");


gothic_image.php:
Код

$_GET['i'] = intval(@$_GET['i']);
$filename = 'gothic3-'.$_GET['i'].'.jpg';
if (!is_file($filename)) {
  die();
}
$width = 160;
$height = 120;

header('Content-type: image/jpeg');

list($width_orig, $height_orig) = getimagesize($filename);

$image_p = imagecreatetruecolor($width, $height);
$image = imagecreatefromjpeg($filename);
imagecopyresampled($image_p, $image, 0, 0, 0, 0, $width, $height, $width_orig, $height_orig);

imagejpeg($image_p, null, 100);

может где-то лопухнулся - отладка за тобой )

а вообще такие вещи надо делать по-другому - создавать превьюшки заранее

Добавлено @ 18:14 
а еще у тебя html какой-то странный smile :
Цитата(Ground @  3.10.2006,  11:22 Найти цитируемый пост)
echo("</tr></td>");


PM MAIL ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "PHP"
Aliance
IZ@TOP
skyboy
SamDark
MoLeX

Новичкам:

  • PHP редакторы собираются и обсуждаются здесь
  • Электронные книги по PHP, документацию можно найти здесь
  • Интерпретатор PHP, полную документацию можно скачать на PHP.NET

Важно:

  • Не брезгуйте пользоваться тегами [code=php]КОД[/code] для повышения читабельности текста/кода.
  • Перед созданием новой темы воспользуйтесь поиском и загляните в FAQ
  • Действия модераторов можно обсудить здесь

Внимание:

  • Темы "ищу скрипт", "подскажите скрипт" и т.п. будут переноситься в форум "Web-технологии"
  • Темы с именами: "Срочно", "помогите", "не знаю как делать" будут УДАЛЯТЬСЯ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0863 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.