Замена цвета на изображении в реальном времени - PullRequest
2 голосов
/ 28 ноября 2010

Прежде всего, я объясню свою ситуацию, чтобы вы могли немного лучше понять мою проблему.Я делаю приложение HTML5.У меня есть холст, и с помощью палитры цветов вы можете изменить цвет холста.Теперь у меня есть картинка, которую я хочу поставить на холст, но цвет картинки нужно менять с помощью палитры цветов.Поэтому мне нужно заменить, скажем, черный цвет на этом изображении и поместить его на холст, чтобы он не испортил фон.

Так это будет выглядеть так:
1-й палитр цветов - изменяетцвет холста
2-й палитр цветов - заменяет черный цвет на изображении на цветовой палитре и помещает его на холст

Теперь моя проблема заключается в том, как заменить цвет на изображении безперезагрузка страницы.

Мое единственное условие - не использовать silverlight, flash, java или любые другие подобные технологии, для которых необходимо установить на устройство стороннее программное обеспечение.

Заранее спасибо.Если вы не полностью понимаете мой запрос, не стесняйтесь спрашивать.

1 Ответ

2 голосов
/ 29 ноября 2010

Мой подход к решению JS only может быть следующим:

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

  • передать информацию о цвете в PHP (или другой серверный скрипт) с вызовом AJAX
  • сделатьуправление цветом с помощью библиотеки изображений, например GD или imagemagik
  • , верните изображение обратно с ответом Ajax
  • , перезагрузите холст с измененной версиейизображение
...