Картинка светлая или тёмная... Средствами GD.

PartizaneN

I speak PHP
Картинка светлая или тёмная... Средствами GD.

Подскажите, кто знает, как лучше (производительнее) узнать является картинка светлой или тёмной, средствами GD.
 

PartizaneN

I speak PHP
Исходя из этого присобачить прозрачную полоску белого или черного цвета с комментом к картинке...
 

regi

Новичок
предоставить возможность админу/пользователю ставить галочку - темная картинка или светлая :)
 

PartizaneN

I speak PHP
Это по-ламерски... :) Итак слишком много чего заполнять нужно... Залил ты 20 картинок и к каждой ещё будешь ставить тёмная она или светлая :)
 

hermit_refined

Отшельник
Это по-ламерски...
забавно звучит из уст человека, который сам не знает, как сделать иначе.

пройдите попискельно, да посчитайте среднюю (или какую хотите) яркость.
для повышения производительности можно попробовать уменьшать картинку перед обходом.
 

boombick

boombick.org
забавно звучит из уст человека, который сам не знает, как сделать иначе.
+1
особенно радует то, что в общем как "не по-ламерски" знают, а вот частности подводят...
 

PartizaneN

I speak PHP
Ахтунг! я не хотел никого обидеть... Вобщем сейчас я делаю так... Из места - где должна быть полоска - выдираю рандомно 60 пикселей и по ним определяю яркость...

hermit_refined, твой вариант у меня тоже был на уме... Её даже уменьшать спецом не нужно, всё это есть...

И сейчас ломаю голову - что лучше - рандом или уменьшённую картинку... Или, может, по диагонали пиксели брать... и из них смотреть...
 

hermit_refined

Отшельник
Или, может, по диагонали пиксели брать... и из них смотреть...
бессмысленно. как вариант - по сетке.
но если вы накладываете эту "полоску" на картинку, то скорее имеет значение именно эта её часть, а не целое.

вообще - "все как всегда".
1. определяется, чего хочется.
2. реализуется несколькими вариантами, благо все они простые.
3. выбирается лучший по качеству вариант с приемлемой производительностью.

а если вас интересует теория - вероятность того, что кто-то решал точно такую же задачу, и этот кто-то заглянет в этот топик в ближайшее время - невелика.
 

SiMM

Новичок
Не по ламерски - это сделать окантовку вокруг букв - будет без разницы, какого фона картинка и угадал ли ты с областью её наложения ("средняя температура по больнице" тут не катит).
 

PartizaneN

I speak PHP
2 Simm - со средней температурой - может быть... и не катит... Но полоска нужна не для того, чтобы виден был текст... Он будет виден с любым цветом полоски ;)

но если вы накладываете эту "полоску" на картинку, то скорее имеет значение именно эта её часть, а не целое.
Добавив уйму картинок становится понятно - нужно по всей картинке яркость смотреть, т.к. некрасиво, если самая нижняя часть тёмная (а именно по ней смотрится сейчас), а остальное - светлое...

-~{}~ 05.03.07 11:19:

Вот здесь - белая полоска смотрится круче...http://rockby.net/?id=457
 

OZ

Новичок
PartizaneN, математик из PHP не самый быстрый, мягко говоря. Сделай в полоске вверху 2 линии толщиной в 1 или 2 пикселя - чёрную и белую. Потом ниже - основной фон белого цвета и чёрные буквы на нём (или наоборот). Таким образом, у тебя всегда будет полоска отделена визуально от картинки и ничего считать не придётся.
 

Фанат

oncle terrible
Команда форума
SiMM
его интересует не цвет букв, а цвет полоски.
и, соответственно, не как будет видно, а как "круче"
 
Сверху