Простая логика. Если у тебя канвас 400 на 600 пикселей, а картинка 30 на 40, то чтобы увеличить её по ширине тебе нужно её ширину увеличить в 400/30=13,3 раза, значит и высоту увеличиваешь в 13,3 раза, то есть 80*13.3=532 пикселя. и вот у тебя картинка по все ширине и равномерно по высоте.