Вы устанавливаете контекст изображения на высоту 200, но затем вы делаете то же самое для прямоугольника ячейки, что означает, что он сделает весь скриншот и поместит его в кадр (screenWidth, 200). Вам нужно сохранить контекст 200, а затем просто использовать view.bounds
для cellRect, и вы должны получить верхний 200 px
представления, если это то, что вам нужно.
UIGraphicsBeginImageContextWithOptions(CGSize(width: UIScreen.main.bounds.width, height: 200) , false, 0)
let cellRect = self.view.bounds
self.view.drawHierarchy(in: cellRect, afterScreenUpdates: true)
let wholeImage = UIGraphicsGetImageFromCurrentImageContext()//stretched image
UIGraphicsEndImageContext()