Я не уверен, что развертывание вашего собственного решения будет проще, чем UIScrollView или UIWebView. Однако, если вы настроены на развертывание собственного решения, это можно сделать с помощью пользовательской обработки событий и изменения фрейма UIImageView. Вам нужно будет обработать сенсорные события в UIImageView (или его контейнере), переопределив следующие методы:
- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event
- (void)touchesMoved:(NSSet *)touches withEvent:(UIEvent *)event
- (void)touchesEnded:(NSSet *)touches withEvent:(UIEvent *)event
- (void)touchesCancelled:(NSSet *)touches withEvent:(UIEvent *)event
В этих методах вам нужно будет различать метчики и пинчи и соответственно устанавливать рамку UIImageView. Помните, что frame - это свойство анимации UIView, поэтому вы также можете анимировать эти изменения.
Если у вас еще нет представления о том, как вы собираетесь обрабатывать события в этих методах, я настоятельно рекомендую вам пересмотреть использование UIScrollView или UIWebView, чтобы делать то, что вы хотите.