在UIScrollView中embeddedUIImage的自由绘图

我正在处理UIScrollView中的UIImage的徒手绘制项目。 一切工作正常与默认缩放绘图,但是,如果我调整UIScrollView的缩放,再次尝试绘图,它开始扭曲图像缩小,使图像看起来模糊。 它也将图像推到屏幕的最左侧。 我曾尝试使用不同的缩放选项无济于事。

这是正常的规模与一些graphics的图像。 在这里输入图像说明

这是缩放和绘图几秒后的图像 在这里输入图像说明

这里是相关的代码(方法在包含滚动视图的视图控制器中声明

override func touchesBegan(_ touches: Set<UITouch>, with event: UIEvent?) { super.touchesBegan(touches, with: event) } override func touchesMoved(_ touches: Set<UITouch>, with event: UIEvent?) { super.touchesMoved(touches, with: event) let currentPoint = touches.first!.location(in: drawingImageView) UIGraphicsBeginImageContextWithOptions(drawingImageView.frame.size, false, 0) drawingImageView.image?.draw(in: CGRect(x: 0, y: 0, width: drawingImageView.frame.size.width, height: drawingImageView.frame.size.height)) UIGraphicsGetCurrentContext()?.addRect(CGRect(x: currentPoint.x, y: currentPoint.y, width: 1, height: 1)) UIGraphicsGetCurrentContext()?.setLineCap(.round) UIGraphicsGetCurrentContext()?.setLineWidth(10) UIGraphicsGetCurrentContext()?.setStrokeColor(colorSelectorButton.backgroundColor!.cgColor) UIGraphicsGetCurrentContext()?.setBlendMode(.normal) UIGraphicsGetCurrentContext()?.strokePath() drawingImageView.image = UIGraphicsGetImageFromCurrentImageContext() UIGraphicsEndImageContext() } override func touchesEnded(_ touches: Set<UITouch>, with event: UIEvent?) { super.touchesEnded(touches, with: event) }