Показать сообщение отдельно
  #9 (permalink)  
Старый 14.07.2015, 05:39
Профессор
Отправить личное сообщение для kostyanet Посмотреть профиль Найти все сообщения от kostyanet
 
Регистрация: 23.10.2010
Сообщений: 2,718

Сообщение от soltx
может у кого получиться решить проблему
Зачем саму картинку-то скукоживать? Плющат, таращат и скукоживают картинки только недобитые пролетарием колхозники.

В качестве иллюстрации функция вычисления ширины основания параллелограмма. Из скрипта для ФШ

/*
@param bounds array габариты объекта
@param radius float юзер задает радиус скругления от 0 (нет) до любого
@param angle float юзер задает угол наклона - скоса от 0 (нет) до +любого (вправо) или -любого (влево)
return side float ширина основания
*/
function calcSkew(bounds, radius, angle) {
	var R = radius,
		A = Math.PI * (Math.abs(angle)/180),
		H = bounds[3] - bounds[1]; // height,
		hyp = R / Math.cos(A),
		leg = hyp * Math.sin(A),
		side = (H * Math.tan(A) - leg + R - hyp)/2;
	return side;
}


Скрипт описывает скругленный параллелограмм внутри габаритных размеров слоя (картинки), а не скукоживает саму картинку, которая как есть просто маскируется векторной маской со всеми радиусами и наклонами и отступами.

Я к тому что если захотите автоматически рассчитывать параметры для стиля, вам эта функция пригодится. В терминах css маскирование это overflow:hidden контейнера картинки.

ЗЫ Кто алгебру читал дальше предисловия, может упростить вычисления. У меня мощности не хватило.

Последний раз редактировалось kostyanet, 14.07.2015 в 05:47.
Ответить с цитированием