Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757
Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737 Форумы портала PHP.SU :: Точка середины в изображении
Покинул форум
Сообщений всего: 28
Дата рег-ции: Март 2013
Помог: 0 раз(а)
Как можно у любого файла, формата изображения найти точку середины? То есть у нас есть изображение и надо найти середину этого изображения.
Мелкий
Отправлено: 28 Апреля, 2014 - 21:57:46
Активный участник
Покинул форум
Сообщений всего: 11926
Дата рег-ции: Июль 2009 Откуда: Россия, Санкт-Петербург
Помог: 618 раз(а)
Поделить размеры пополам?
----- PostgreSQL DBA
Hays
Отправлено: 28 Апреля, 2014 - 22:45:20
Новичок
Покинул форум
Сообщений всего: 28
Дата рег-ции: Март 2013
Помог: 0 раз(а)
Мелкий пишет:
Поделить размеры пополам?
и все, и этого хватит разве, чтобы найти середину?
psevdo
Отправлено: 29 Апреля, 2014 - 09:40:35
Гость
Покинул форум
Сообщений всего: 101
Дата рег-ции: Сент. 2010
Помог: 0 раз(а)
А что еще нужно? Определяешь ширину, длину и делишь на 2. Возможна конечно проблема, если у изображения есть тени. Но если это не нужно учитывать, то проблема отпадает.
Мелкий
Отправлено: 29 Апреля, 2014 - 10:10:56
Активный участник
Покинул форум
Сообщений всего: 11926
Дата рег-ции: Июль 2009 Откуда: Россия, Санкт-Петербург
Помог: 618 раз(а)
Hays пишет:
и все, и этого хватит разве, чтобы найти середину?
Дык разумеется. Есть прямоугольник с известными сторонами. Как найти его центр? Отложить от одного угла половину ширины и половину высоты более чем достаточно.
На растровом изображении единственно только это часто окажется не строго один пиксель, а где-то между несколькими соседями.
----- PostgreSQL DBA
Zuldek
Отправлено: 29 Апреля, 2014 - 15:07:31
Постоянный участник
Покинул форум
Сообщений всего: 2122
Дата рег-ции: Июнь 2010
Помог: 50 раз(а)
откройте для себя imagick уже
Hays
Отправлено: 29 Апреля, 2014 - 18:31:01
Новичок
Покинул форум
Сообщений всего: 28
Дата рег-ции: Март 2013
Помог: 0 раз(а)
Мелкий пишет:
Hays пишет:
и все, и этого хватит разве, чтобы найти середину?
Дык разумеется. Есть прямоугольник с известными сторонами. Как найти его центр? Отложить от одного угла половину ширины и половину высоты более чем достаточно.
На растровом изображении единственно только это часто окажется не строго один пиксель, а где-то между несколькими соседями.
А вычислить точный центр никак?
IllusionMH
Отправлено: 29 Апреля, 2014 - 18:50:34
Активный участник
Покинул форум
Сообщений всего: 4254
Дата рег-ции: Февр. 2011 Откуда: .kh.ua
Помог: 242 раз(а)
Hays, если у вас четное число пикселей, то середина будет точно лежать между пикселями.
Hays
Отправлено: 29 Апреля, 2014 - 19:05:43
Новичок
Покинул форум
Сообщений всего: 28
Дата рег-ции: Март 2013
Помог: 0 раз(а)
IllusionMH пишет:
Hays, если у вас четное число пикселей, то середина будет точно лежать между пикселями.
Хорошо.
А вот у меня есть иконка 16x16. как мне её встроить правильно, чтобы фон изображения самого, куда я помещаю эту иконку не был испорчен? Вот просто эту иконку взять и вфонить в само изображение. Какие операции нужны?
IllusionMH
Отправлено: 29 Апреля, 2014 - 19:33:10
Активный участник
Покинул форум
Сообщений всего: 4254
Дата рег-ции: Февр. 2011 Откуда: .kh.ua
Помог: 242 раз(а)
Hays, от ширины изображения отнимаете ширину иконки и делите попалам. Округляете в меньшую сторону. или в большую, как нравиться. Аналогично для высоты.
Все гости форума могут просматривать этот раздел. Только зарегистрированные пользователи могут создавать новые темы в этом разделе. Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.