Я использую версию fabricjs 1.6.7.Я хочу добиться чего-то сложного.Как и свойство css background-position, я хочу расположить изображение внутри определенной ширины и высоты.То, что я получаю, это полное изображение внутри ширины и высоты.Изображение сжимается.Я хочу сохранить исходный размер изображения и показать только часть изображения, которая соответствует определенной ширине и высоте относительно свойства background-position.Я пытался поддерживать соотношение сторон и точную посадку.Но оба случая не дают мне решения.Вот что я попробовал:
if(pattern.name == 'Maintain Aspect') {
var ih = obj.getOriginalSize().height;
var iw = obj.getOriginalSize().width;
var cw = obj.width;
var ch = obj.height;
var width_ratio = cw / iw;
var height_ratio = ch / ih;
var fw,fh;
if (width_ratio > height_ratio) {
fw = iw * width_ratio;
fh = ih*fw/iw;
} else {
fh = ih * height_ratio;
fw = iw*fh/ih;
}
obj.width = fw;
obj.height = fh;
canvas.renderAll();
} else if(pattern.name == 'Exact Fit') {
obj.width = (40/100)*canvas.width;
obj.height = (40/100)*canvas.height;
obj.scaleX = 1;
canvas.renderAll();
}
Пожалуйста, помогите.