Автор Тема: Закруглить углы у картинки  (Прочитано 15854 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн kosm

  • Фанат форума
  • Постоялец
  • ***
  • Сообщений: 110
  • +0/-0
  • 0
    • Просмотр профиля
    • http://japanretro.tk
Закруглить углы у картинки
« : 29 Января 2004, 14:42:35 »
Ребят, подскажите плиз, можно на лету у картинки углы закруглять с помощью пхп? Просто дизайн требует закругленных краев, а обрабатывать ручками каждую фотку довольно муторно :(

Оффлайн Diesel

  • Завсегдатай
  • Пользователь
  • **
  • Сообщений: 69
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
Закруглить углы у картинки
« Ответ #1 : 29 Января 2004, 16:53:12 »
Ну да. Лучше PHP напрячь на лишнюю работу при каждом запуске скрипта, чем один раз в фотошопе все сделать :)

Оффлайн kosm

  • Фанат форума
  • Постоялец
  • ***
  • Сообщений: 110
  • +0/-0
  • 0
    • Просмотр профиля
    • http://japanretro.tk
Закруглить углы у картинки
« Ответ #2 : 29 Января 2004, 17:10:28 »
Diesel
Т.е. это не правильно? Либо ручками до размещения на сйте, либо отказаться от закруглений?

Оффлайн FreeSpace

  • Штатный лодырь
  • Ветеран
  • *****
  • Сообщений: 613
  • +0/-0
  • 2
    • Просмотр профиля
    • http://www.infinity.com.ua
Закруглить углы у картинки
« Ответ #3 : 29 Января 2004, 20:09:20 »
kosm
Diesel забыл рассказать тебе о ещё одном варианте: во время загрузки изображения на сервер, обрабатывать его один раз, а затем хранить изображение на сервере с уже закругленными углами.
Сделать это можно функцией [p]imagecopy[/p], копируя четыре изображения с закругленными углами в четыре соответсвующих угла загружаемой картинки. Так же тебе может понадобится фунция [p]imagecolortransparent[/p]. Я сам никогда не делал ничего подобного, но предполагаю, что четыре угла нужно будет сохранить в формате png с альфа-каналом, который будет задавать прозрачность в нужном месте.
Программирование - это единственное искусство, которое способно воплотить столь уникальное сочетание эстетики и функциональности.

Оффлайн Меняздесьдавнонет

  • новичЕк
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 5698
  • +0/-0
  • 2
    • Просмотр профиля
    • http://
Закруглить углы у картинки
« Ответ #4 : 29 Января 2004, 20:16:17 »
у джипега нету прозрачности.

Оффлайн FreeSpace

  • Штатный лодырь
  • Ветеран
  • *****
  • Сообщений: 613
  • +0/-0
  • 2
    • Просмотр профиля
    • http://www.infinity.com.ua
Закруглить углы у картинки
« Ответ #5 : 29 Января 2004, 20:55:25 »
Цитировать
FreeSpace:
четыре угла нужно будет сохранить в формате png с альфа-каналом
Программирование - это единственное искусство, которое способно воплотить столь уникальное сочетание эстетики и функциональности.

Оффлайн Neter

  • Жустер
  • Старожил
  • ****
  • Сообщений: 324
  • +0/-0
  • 2
    • Просмотр профиля
Закруглить углы у картинки
« Ответ #6 : 29 Января 2004, 21:04:34 »
FreeSpace А что експлорер уже начал отображать png с альфаканалом? Скорее всего прийдётся юзать гиф или если известно что с бэкграундом ничего не планируется делать - jpg с залитыми углами.
Мне тормоз послужил толчком...

Оффлайн Меняздесьдавнонет

  • новичЕк
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 5698
  • +0/-0
  • 2
    • Просмотр профиля
    • http://
Закруглить углы у картинки
« Ответ #7 : 29 Января 2004, 21:06:41 »
FreeSpace ,а при чем здесь формат квадратов-то - я не пойму?

Оффлайн FreeSpace

  • Штатный лодырь
  • Ветеран
  • *****
  • Сообщений: 613
  • +0/-0
  • 2
    • Просмотр профиля
    • http://www.infinity.com.ua
Закруглить углы у картинки
« Ответ #8 : 29 Января 2004, 21:08:59 »
Neter
Перечитай внимательнее сообщение.
Я не хочу посылать тебя в "na_tanke" :)
Картинка формируется при помощи GD на стороне сервера.
А браузер получает уже сформированную картинку с закругленными углами в том формате, в каком пожелаешь (и какой поддерживает GD). Скорее всего в jpeg.
Программирование - это единственное искусство, которое способно воплотить столь уникальное сочетание эстетики и функциональности.

Оффлайн FreeSpace

  • Штатный лодырь
  • Ветеран
  • *****
  • Сообщений: 613
  • +0/-0
  • 2
    • Просмотр профиля
    • http://www.infinity.com.ua
Закруглить углы у картинки
« Ответ #9 : 29 Января 2004, 21:11:00 »
RomikChef
Да в том-то и дело, что я не работал с прозрачными изображениями в GD и не знаю, можно ли будет задать цвет прозрачности "на лету" в jpeg. Зато я на 100% уверен, что это можно сделать в png и не на лету, а в том же фотошопе. Поэтому и говорил про png.
Программирование - это единственное искусство, которое способно воплотить столь уникальное сочетание эстетики и функциональности.

Оффлайн Меняздесьдавнонет

  • новичЕк
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 5698
  • +0/-0
  • 2
    • Просмотр профиля
    • http://
Закруглить углы у картинки
« Ответ #10 : 29 Января 2004, 21:41:08 »
FreeSpace , не надо посылать нетера на танк.
он там был.
твои альфа-каналы - это все трындеж и бутафория, поверь мне.
поскольку картинки на сайте могут быть в джпг, все твои каналы идут лесом. понимаешь? Если нельзя применить метод для всех картинок, то грош ему цена.

Не надо бежать впереди паровоза.
сначла спроси товарища - как он представляяет себе "картинки со скругленными краями", а потом уже бежать овтечать.

Хотя что там особо изобретать - вариант все равно один, ГД рисовать эллипсы, залитые цветом фона сайта

Оффлайн FreeSpace

  • Штатный лодырь
  • Ветеран
  • *****
  • Сообщений: 613
  • +0/-0
  • 2
    • Просмотр профиля
    • http://www.infinity.com.ua
Закруглить углы у картинки
« Ответ #11 : 29 Января 2004, 22:57:55 »
RomikChef
Сразу говорю, я не проверял, но в теории алгоритм должен работать с любыми типами изображений.
1. Открываем загружаемую картинку (формат не важен - лишь бы GD поддерживал).
2. Открываем четыре картинки с закругленными углами в формате PNG.
3. Копируем четыре картинки с углами в соответствующие углы загружаемой картинки.
4. Сохраняем обновленную загружаемую картинку в нужном нам формате.

Edited:
Альфа-канал необходим только в процессе копирования уголков на загружаемую картинку. Получившееся изображение можно сохранить в JPEG или любом другом формате без всякого альфа-канала.
Программирование - это единственное искусство, которое способно воплотить столь уникальное сочетание эстетики и функциональности.

Оффлайн Меняздесьдавнонет

  • новичЕк
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 5698
  • +0/-0
  • 2
    • Просмотр профиля
    • http://
Закруглить углы у картинки
« Ответ #12 : 29 Января 2004, 23:23:17 »
объясни, родной, какого цвета будут углы?
можно без гд и пхп.

может, хватит уже тупить-то?

Оффлайн FreeSpace

  • Штатный лодырь
  • Ветеран
  • *****
  • Сообщений: 613
  • +0/-0
  • 2
    • Просмотр профиля
    • http://www.infinity.com.ua
Закруглить углы у картинки
« Ответ #13 : 30 Января 2004, 00:05:31 »
Какого цвета - это надо у kosm\'а спросить.
Какого надо, такого и будут.
Вот пример:

Картинка правого нижнего угла.
Белая область становится прозрачной, а голубая остается голубой, гармонично вписываясь в дизайн сайта.

Ромик, хватит наезжать.
Ты предлагаешь делать это [p]imagefilledarc[/p] или подобной функцией.
Я согласен с тобой, но если форма угла выходит за пределы обычной кривой, или например содержит какую-либо текстуру, то проще сделать это именно копированием изображений.
Программирование - это единственное искусство, которое способно воплотить столь уникальное сочетание эстетики и функциональности.

Оффлайн Меняздесьдавнонет

  • новичЕк
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 5698
  • +0/-0
  • 2
    • Просмотр профиля
    • http://
Закруглить углы у картинки
« Ответ #14 : 30 Января 2004, 01:00:43 »
стоп.
при чем здесь гиф?
я тебе уже битый час толкую про ДЖИПЕГ!

и не наезжаю я на тебя.
Я удивляюсь - как можно так безбожно тупить.

(передразнивая) "беееелая область становится прозрачной".
КАК У ДЖИПЕГА ОБЛАСТЬ СТАНЕТ ПРОЗРАЧНОЙ???

 

Sitemap 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28