Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 09.04.2010, 14:07
Кандидат Javascript-наук
Отправить личное сообщение для Jurasmi Посмотреть профиль Найти все сообщения от Jurasmi
 
Регистрация: 25.11.2008
Сообщений: 115

Canvas. Искажение пропорций.
Есть код:

function bubbleClass(el){
		var textEl = el.innerHTML,
			elWidth = el.offsetWidth,
			elHeight = el.offsetHeight;
		
		
		el.innerHTML = 
			"<div>"+ textEl +"</div>"+
			"<canvas></canvas>";
		
		var canvasEl = el.getElementsByTagName('canvas')[0],
			canvText = el.getElementsByTagName('div')[0];
		
		canvasEl.style.height = elHeight+"px";
		canvasEl.style.width = elWidth+"px";
		
		var	canvasElDraw = canvasEl.getContext("2d");
		
		canvasElDraw.fillStyle = "rgb(200,0,0)";
		canvasElDraw.fillRect (0, 0, 50, 50);
	}


Функция получает элемент DOM, в этом элементе рисует квадрат.
Проблема: рисуется не квадрат, а прямоугольник. Видимо сначала отрисовывается всё-таки квадрат, а потом при изменяются размеры холста и он искажается.

Вопрос: как нарисовать квадрат на холсте с размерами "elWidth X elHeight"
Ответить с цитированием
  #2 (permalink)  
Старый 09.04.2010, 14:11
Отправить личное сообщение для Octane Посмотреть профиль Найти все сообщения от Octane  
Регистрация: 10.07.2008
Сообщений: 3,873

Высоту и ширину канвас задавайте специальными атрибутами width и height, а не CSS-стилями.
Ответить с цитированием
  #3 (permalink)  
Старый 09.04.2010, 14:16
Кандидат Javascript-наук
Отправить личное сообщение для Jurasmi Посмотреть профиль Найти все сообщения от Jurasmi
 
Регистрация: 25.11.2008
Сообщений: 115

Спасибо, помогло.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Опера и canvas (ну чтож не все слава богу-то?) neurostep Общие вопросы Javascript 0 27.10.2009 11:20
Canvas (разный цвет линий) neurostep Общие вопросы Javascript 2 26.10.2009 16:23
Как эта canvas влияет на https? demi Общие вопросы Javascript 4 28.08.2009 15:15
Аналог wmode=transparent для Canvas или svg lusever Events/DOM/Window 1 15.06.2009 16:05
работа Canvas nemo Общие вопросы Javascript 0 25.05.2009 04:02