직접 한번 구현해보시는건 어떨까요?
translate 로 움직이는 영역이 결국 view 크기에 벗어나지 않도록 범위를 지정해줘야 합니다.
움직이는 뷰의 중점값을 구하고 움직이는 그림이 사각형이라 가정하면 각 꼭지점의 최대 좌표를알 수 있을것이고 터치 무브시에 translate 하는 영역을 해당 최대값을 넘지 않도록 제한하면 해결될거 같습니다.
줌인 경우에는 각 꼭지점의 최대 좌표값들을 갱신시켜주고, 영역을 넘게 확대됐을 경우에 대한 좌표 보정이 필요하겠네요. 좀 어렵지만 이런거 한번 구상해서 직접 구현해보시는것이 좋을듯 합니다.