title: Unity UI zoom in/out, adjust scroll position
body: <p>I'm trying to make something similar to Paint in Unity.
  I want to add functionality for zoom in/out. For this purpose, I've added paint area into into <code>ScrollRect</code> and change <code>localScale</code> of paint area on mouse wheel event.</p>
  
  <pre><code>var scrollDelta = Input.GetAxis("Mouse ScrollWheel");
  var scale = _editableArea.localScale.x + scrollDelta;
  _editableArea.localScale = new Vector3(scale, scale, scale);
  </code></pre>
  
  <p>There are also additional checks, but I omit them.</p>
  
  <p>For now I'm trying to adjust scrollbars position, so after zoom mouse will be under the same element it was before. And...
  I stuck with formula to calculate new position of scrollbars. Probably, I reinvent the wheel and there is already a way to do this by native functions in Unity. Could you show me right way?</p>
  
  <p>Thanks</p>