![]() |
|
Модераторы: Sardar, Aliance |
![]()
|
|
| Рыжий |
|
|||
![]() Помешанный ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1423 Регистрация: 19.9.2004 Репутация: нет Всего: 20 |
Всем привет!
Мне вот интерестно как сделать палитру цветов, для того, чтобы человек мог любой выбрать цвет для себя. |
|||
|
||||
| Aliance |
|
|||
![]() I ♥ <script> ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 6418 Регистрация: 2.8.2004 Где: spb Репутация: 55 Всего: 137 |
Как вывод осуществлять? Вообще можно, взять массив (там номера rgb строк {16} от 0 до 255 по-моему... )
Вот пример вывода случайного RGB света:
|
|||
|
||||
| Sardar |
|
|||
![]() Бегун ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 6986 Регистрация: 19.4.2002 Где: Нидерланды, Groni ngen Репутация: 78 Всего: 317 |
Создаёшь картинку с "палитрой", генеришь в каком нибудь редакторе. Затем отслеживаешь клик по картинке, смотришь координаты, высчитываешь цвет.
Где конкретно проблема? -------------------- Опыт - сын ошибок трудных © А. С. Пушкин Процесс написания своего велосипеда повышает профессиональный уровень программиста. © Opik Оценить мои качества можно тут. |
|||
|
||||
| Aliance |
|
|||
![]() I ♥ <script> ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 6418 Регистрация: 2.8.2004 Где: spb Репутация: 55 Всего: 137 |
Sardar думаю он имел ввиду автоматом сгенерить такую таблицу =)
|
|||
|
||||
| Sardar |
|
|||
![]() Бегун ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 6986 Регистрация: 19.4.2002 Где: Нидерланды, Groni ngen Репутация: 78 Всего: 317 |
Это нечеловечески долго будет, к томуже завесить браузер может
Для тех кто не понял, в JS нельзя(пока) работать с картинками, рисовать, обращаться по пиксельно и т.п. Можно создать "картинку" где каждый пиксель это ячейка таблицы, либо тег span/div на абсолютной позиции, естественно что это всё начинает дико тормозить. Потому не выделываемся, генерим картинку где угодно, сохраняем в .png и радуемся жизни -------------------- Опыт - сын ошибок трудных © А. С. Пушкин Процесс написания своего велосипеда повышает профессиональный уровень программиста. © Opik Оценить мои качества можно тут. |
|||
|
||||
| Рыжий |
|
|||
![]() Помешанный ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1423 Регистрация: 19.9.2004 Репутация: нет Всего: 20 |
да нет картинку могу и я нарисовать а вот как уследить, допустим - человек водит мышкой по цветам и у него срузу выбивает этот цвет ну допустим в отдельном окошечке, когда происходит клик - это должно записаться в базу данных, как выбор цвета, загвоздка что в JS я не силен, хотя планирую (на каникулах - скоро) влезть в этот язык - а пока подскажите как реализовать отслеживание и запись места его клика...
|
|||
|
||||
| Aliance |
|
|||
![]() I ♥ <script> ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 6418 Регистрация: 2.8.2004 Где: spb Репутация: 55 Всего: 137 |
По координатам клика мыши. Это, к слову, можно не только на JS сделать. На том же php - если сделать не submit кнопку, а image...
Но давай уточним - тебе нужна картинки или нет? Т.к. в первом твоем посту о картинке речь не шла... Объясни четко что ты хочешь сделать |
|||
|
||||
| Alx |
|
||||
|
Ajaxy ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 2903 Регистрация: 26.11.2003 Где: Cutopia Репутация: 10 Всего: 78 |
я вот делал с модальными окнами -
http://alx.com.ru/portfolio/scripts/javascript/greetings там когда нажимаешь кнопки "текст" или "фон" открывается такая палитра. генерируется она таким кодом:
а функции, которые все это отрабатывают вот:
таким образом после выбора цвета, окошко закроется, а в главном окне будет alert с выбранным цветом. ie only. |
||||
|
|||||
| Ciber SLasH |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1813 Регистрация: 9.11.2004 Где: С.-Петербург Репутация: 24 Всего: 67 |
Вот посмотри пример палитры, если ты это имел ввиду... Присоединённый файл ( Кол-во скачиваний: 56 )
Temp.zip |
|||
|
||||
| Sardar |
|
|||
![]() Бегун ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 6986 Регистрация: 19.4.2002 Где: Нидерланды, Groni ngen Репутация: 78 Всего: 317 |
Ciber SLasH не плохо, только зачем дважды паковать?
PHP-Script отлавливаем на картинке событие onmousemove и onmouseup, в обработчике получаем координаты относительно верхнего левого угла((offset|layer)(X|Y)), по ним расчитываем цвет. Как ты генерил палитру, ту же формулу и используй. Где конкретно поблему? Сгенери картинку, выложи, обьясни как генерил, напишем скрипт. -------------------- Опыт - сын ошибок трудных © А. С. Пушкин Процесс написания своего велосипеда повышает профессиональный уровень программиста. © Opik Оценить мои качества можно тут. |
|||
|
||||
| Рыжий |
|
|||
![]() Помешанный ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1423 Регистрация: 19.9.2004 Репутация: нет Всего: 20 |
Ciber SLasH
у меня не качает файл |
|||
|
||||
| Ciber SLasH |
|
||||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1813 Регистрация: 9.11.2004 Где: С.-Петербург Репутация: 24 Всего: 67 |
2PHP-Script:
Вот код того примера:
2Sardar:
А это потому что этот форум не захотел принимать RAR-архив, а если рар потом ещё и зазипить, то форум конечно проглатывает, а вот размер у такого двойного архива получается меньше, чем если бы мы запаковали только зипом (проверено путём экспериментов). Это сообщение отредактировал(а) Ciber SLasH - 29.4.2005, 00:35 |
||||
|
|||||
| Рыжий |
|
|||
![]() Помешанный ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1423 Регистрация: 19.9.2004 Репутация: нет Всего: 20 |
вот посмотрите, картинка, которая должна получиться, у вас почти тоже самое, но здесь опрятней, и тем более отсортировано все по другому - синий с синим, зеленый с зеленым и т.д.
Присоединённый файл ( Кол-во скачиваний: 59 )
11.jpg |
|||
|
||||
| 12345c |
|
|||
![]() Круглый ![]() ![]() ![]() ![]() Профиль Группа: Vingrad developer Сообщений: 2018 Регистрация: 26.12.2005 Где: наша не пропадала ? Репутация: 57 Всего: 101 |
Рыжий: а есть такая же, но в PNG, не попорченная Джпегом? Хотелось бы просчитать принцип её построения, но не гадать, какие цвета задумывались.
-------------------- Google Code Playground - онлайн-отладка своих примеров HTML+JS без регистрации, с сохранением по URL, без кириллицы. Go |
|||
|
||||
| Sardar |
|
|||
![]() Бегун ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 6986 Регистрация: 19.4.2002 Где: Нидерланды, Groni ngen Репутация: 78 Всего: 317 |
Это палитра цветов в HSV (оттенок, яркость, насыщеность). Для человека более удобно чем RGB. Инфа по ссылке.
-------------------- Опыт - сын ошибок трудных © А. С. Пушкин Процесс написания своего велосипеда повышает профессиональный уровень программиста. © Opik Оценить мои качества можно тут. |
|||
|
||||
| 12345c |
|
|||
![]() Круглый ![]() ![]() ![]() ![]() Профиль Группа: Vingrad developer Сообщений: 2018 Регистрация: 26.12.2005 Где: наша не пропадала ? Репутация: 57 Всего: 101 |
Да, но красивых раскладок цветов я там не нашёл.
http://www.iosart.com/firefox/colorzilla/palettes.html - палитры, много, и даже коды цветов можно вытащить без проблем, а затем воспроизвести в JS. http://www.ficml.org/jemimap/style/color/wheel.html - неплохой автомат для подбора цветов. -------------------- Google Code Playground - онлайн-отладка своих примеров HTML+JS без регистрации, с сохранением по URL, без кириллицы. Go |
|||
|
||||
| Alx |
|
|||
|
Ajaxy ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 2903 Регистрация: 26.11.2003 Где: Cutopia Репутация: 10 Всего: 78 |
+1 |
|||
|
||||
| 12345c |
|
||||
![]() Круглый ![]() ![]() ![]() ![]() Профиль Группа: Vingrad developer Сообщений: 2018 Регистрация: 26.12.2005 Где: наша не пропадала ? Репутация: 57 Всего: 101 |
Alx: конечно, красиво, и идея остроумная - взять один png и выводить сменяющиеся палитры. Раньше видел варианты, как брали jpg, увеличивали его маленький участок и показывали как пример выбранного цвета.
Про палитры: Пока нет алгоритма генерации, написал брутфорсный генератор палитры по Gimp-овскому файлу палитр, который нашёл на вышеприведённой странице (ColorZilla palettes). Например, берём и выводим такой файл, только в виде таблицы: .Для этого нужно скопировать описание в код страницы (занимает 12 Кба с комментариями) и выполнить маленький код:
Если задаться целью сделать компактную версию, берём для разнообразия примеров другую палитру, более компактную также по форме: ,и пишем код для разбора 16-ричных чисел:
Остаётся задача - получить код для той хорошо расставленной палитры, и затем сделать генератор таблицы с ней не составит больших проблем. Кто видел в Gimp хорошие палитры? -------------------- Google Code Playground - онлайн-отладка своих примеров HTML+JS без регистрации, с сохранением по URL, без кириллицы. Go |
||||
|
|||||
| alex77 |
|
|||
![]() жывтоне чочо ![]() Профиль Группа: Участник Сообщений: 52 Регистрация: 29.9.2006 Где: Екатеринбург Репутация: нет Всего: нет |
Добрый день!
Как сгенерить такую картинку? Всмысле по какому принципу. Это сообщение отредактировал(а) alex77 - 4.10.2006, 13:57 |
|||
|
||||
| 12345c |
|
|||
![]() Круглый ![]() ![]() ![]() ![]() Профиль Группа: Vingrad developer Сообщений: 2018 Регистрация: 26.12.2005 Где: наша не пропадала ? Репутация: 57 Всего: 101 |
Это здесь:
http://forum.vingrad.ru/index.php?showtopic=96019 http://js2.ru/subs/subs006.shtml - скрипты и примеры генерации палиты цветов (статья). http://js2.ru/subs/subs005.shtml#part2 - начало статьи. Это сообщение отредактировал(а) 12345c - 3.3.2008, 13:49 -------------------- Google Code Playground - онлайн-отладка своих примеров HTML+JS без регистрации, с сохранением по URL, без кириллицы. Go |
|||
|
||||
| alex77 |
|
|||
![]() жывтоне чочо ![]() Профиль Группа: Участник Сообщений: 52 Регистрация: 29.9.2006 Где: Екатеринбург Репутация: нет Всего: нет |
Спасибо, много полезного, но той картинки, которая в цитируемом сообщении, я там не нашел.
Вот, нашел другую палитру (в прикрепл. файле), взял из photoshop. Интересует принцип построения такой палитры. Может кто-нибудь знает, или делал? Вариант с предварительным созданием списка цветов не подходит. p.s. делаю форму для выбора цвета, наподобие той, что в FCKEditor, только с другими цветами. Присоединённый файл ( Кол-во скачиваний: 18 )
palitra.png 7,26 Kb |
|||
|
||||
| Sardar |
|
|||
![]() Бегун ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 6986 Регистрация: 19.4.2002 Где: Нидерланды, Groni ngen Репутация: 78 Всего: 317 |
alex77, тебе лучше в алгоритмы с этим вопросом, потом уже просто реализовать в JS.
На вид похоже на HSL/HSV -------------------- Опыт - сын ошибок трудных © А. С. Пушкин Процесс написания своего велосипеда повышает профессиональный уровень программиста. © Opik Оценить мои качества можно тут. |
|||
|
||||
| dstorm81 |
|
|||
![]() бездельник ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1178 Регистрация: 18.1.2006 Где: (16RU) Репутация: 20 Всего: 39 |
-------------------- на форуме с 8.12.2002 (http://forum.vingrad.ru/index.php?act=ST&f=10&t=4874&st=0#) |
|||
|
||||
| 12345c |
|
|||
![]() Круглый ![]() ![]() ![]() ![]() Профиль Группа: Vingrad developer Сообщений: 2018 Регистрация: 26.12.2005 Где: наша не пропадала ? Репутация: 57 Всего: 101 |
Здесь таблица с очень многими ячейками получится, по опыту известно, что при генерации такой, IE будет сильно тормозить (на десятки секунд). Попробуй угадать или прочитать граббером способ кодирования, затем написать алгоритм. Я делал подобное, в статье http://js2.ru/subs/subs006.shtml - пример, в конце статьи. Но времени на кодирование генерации уходит очень много, а выигрыш - 300 байтов. Для показанной палитры выигрыш, конечно, будет больше, так как цветов больше, но вопрос встанет со скоростью. Попробуйте нарисовать эту палитру без цветов или с 1 и тем же цветом, чтобы посмотреть скорость. (Вряд ли устроит.) Другой способ работы с палитрой - по рисунку без генерации таблицы. Который подойдёт для такого очень многоцветного рисунка. По клику мыши получаем координаты клика и вычисляем цвет. По списку или по формуле - неважно. Формула будет привязана к рисунку. Это сообщение отредактировал(а) 12345c - 3.3.2008, 13:53 -------------------- Google Code Playground - онлайн-отладка своих примеров HTML+JS без регистрации, с сохранением по URL, без кириллицы. Go |
|||
|
||||
![]()
|
| Форум для вопросов, которые имеются в справочниках, но их поиск вызвал затруднения, или для разработчика требуется совет или просьба отыскать ошибку. Напоминаем: 1) чётко формулируйте вопрос, 2) приведите пример того, что уже сделано, 3) укажите явно, нужен работающий пример или подсказка о том, где найти информацию. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | JavaScript: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |