Javascript-форум (https://javascript.ru/forum/)
-   (X)HTML/CSS (https://javascript.ru/forum/xhtml-html-css/)
-   -   рисование на изображении (https://javascript.ru/forum/xhtml-html-css/18103-risovanie-na-izobrazhenii.html)

ev09 17.06.2011 11:54

рисование на изображении
 
есть картинка gif jpg есть координаты объектов ну скажем {20-20 25-30} прямоугольные, многоугольные, хочу чтобы при наведении мsib они меняли цвет т.е. примерно как это делают во флэше, но эффект был применен именно к области заключенной в координаты, а не ко всей картинке, пробовал рисовать с помощью js но координаты картинки не совпадают, с теми где рисуется, может кто что посоветуает как сделать

ksa 17.06.2011 12:00

Цитата:

Сообщение от ev09
может кто что посоветуает как сделать

Как вариант иметь 2 картинки:
- оригинал
- с изменёнными цветами

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

ksa 17.06.2011 12:15

В моём примере картинка одна... Но как идея думаю будет понятно...

<!DOCTYPE html>
<html>
<head>
<title>test</title>
<style type="text/css">
#container {
	position: relative;
	width: 336px;
	height: 76px;
	background: url('http://javascript.ru/forum/images/ca_serenity/misc/logo.gif') no-repeat;
	border: 1px solid;
}
#shadow {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	opacity: 0.7;
	filter: alpha(Opacity=70);
	background-color: #ffffff;
}
#target {
	position: absolute;
	top: 10px;
	left: 20px;
	width: 40px;
	height: 40px;
	border: 1px solid;
}
#target:hover {
	background: url('http://javascript.ru/forum/images/ca_serenity/misc/logo.gif') no-repeat -21px -11px;
}
</style>
<script type="text/javascript">
</script>
</head>
<body>
<div id='container'>
	<div id='shadow'></div>
	<div id='target'></div>
</div>
</body>
</html>

ev09 17.06.2011 12:15

Цитата:

Сообщение от ksa (Сообщение 109141)
Как вариант иметь 2 картинки:
- оригинал
- с изменёнными цветами

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

А если область не прямоугольная? а скажем в виде треугольника? можно конечно собрать из картинок, но если элементов 60-70 то…:D

ksa 17.06.2011 12:18

Цитата:

Сообщение от ev09
А если область не прямоугольная? а скажем в виде треугольника?

А если ввиде ромба? Или еще более сложной фигуры?
Ведь это не мой сон - твой. :lol:

ev09 17.06.2011 12:33

Цитата:

Сообщение от ksa (Сообщение 109145)
А если ввиде ромба? Или еще более сложной фигуры?
Ведь это не мой сон - твой. :lol:

похоже html5+js только во сне flash заменяют


Часовой пояс GMT +3, время: 14:51.