2012-12-30 3 views
1

Мне нужно раскрасить пост-это изображение (например, это here) в зависимости от значения rgb.Colorize Background-Image

Моя проблема заключается в следующем: Внешние части изображения должны быть прозрачными, поскольку изображение помещается перед разными цветами фона.

Во-вторых, мне нужно, чтобы в настоящее время желтый цвет изображения меняется на заданное значение rgb. (не анимированный)

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

Любые идеи по этому поводу?

Спасибо заранее, Войцок

+0

Как будет отображаться изображение? Это будет сделано динамически (например, через форму с цветными ползунками)? Или это будет сделано статически (у PageA будет синее изображение, у PageB будет зеленое изображение и т. Д.)? – cimmanon

+0

Есть много сообщений-на странице. каждый из них получает значение color-rgb с сервера. Это то, о чем вы спрашивали? – Woyzeck

ответ

1

Вы можете сделать это тонирование изображения, нарисованное в <canvas> элементе. (См. Пример here), а затем создайте URI данных, который вы можете использовать для показа изображения.

Не уверен, что это может быть сделано с чистым CSS, но я хотел бы быть опровергнуто :)

+1

Ну, я думаю, вы всегда можете иметь четыре из этих изображений (белый, красный, зеленый и синий), а затем перекрывать их (с умными z-индексами - белый снизу), играя с RGB-положением - его значение непрозрачности создавать пользовательские цвета ... Я предполагаю, что это сработает (и будет 100% CSS!). Но ваш ответ проще. :-) – mbinette

+0

@mbinette Хорошая точка! Возможно, это тоже сработает. Это может быть не слишком грязно, если вы обрабатываете некоторые из них с помощью JavaScript. –

0

Спасибо за ваши быстрые предложения!

Я уверен, что они тоже будут работать. Но я столкнулся с другим хорошим решением, которое работает для меня here.

Полностью CSS, но, конечно, он не использует изображение, как я пытался раньше.

Смежные вопросы