Canvas zoom now accounts for height as well

Currently the 'fit-viewport' option for the canvas.zoom function only takes into account the diagrams height which leads to the bottom of a a high diagram to get cut off.

This fix also accounts for the diagrams height and scales it down to fit the available height as well.