YPDrawSignatureView,Capturing/Saving iOS 应用程序中的签名

YPDrawSignatureView, Capturing/Saving a Signature in an iOS App

我在 Github (https://github.com/yuppielabel/YPDrawSignatureView) 上使用 YPDrawSignatureView 自定义 class,并且我将我的应用程序设置为以模态方式呈现一个新视图,该视图能够签署您的名字和 save/cancel 图片。

我正在使用 class 中的默认保存功能,但我完全不知道它是如何工作的或保存到哪里。

这是该函数的代码:

       // MARK: Save the Signature as an UIImage
func getSignature() ->UIImage {
    UIGraphicsBeginImageContext(CGSizeMake(self.bounds.size.width, self.bounds.size.height))
    self.layer.renderInContext(UIGraphicsGetCurrentContext())
    var signature: UIImage = UIGraphicsGetImageFromCurrentImageContext()
    UIGraphicsEndImageContext()
    return signature
}

我是这样称呼它的:

        @IBAction func saveButton(sender: UIButton) {
    SignatureImage = signatureCaptureField!.getSignature()
    dismissViewControllerAnimated(true, completion: nil)
}

我希望将该签名保存为图像,并使其显示在应用程序的主视图中(作为表单的签名)。它保存到哪里以及从哪里保存以及如何在该视图中访问它?

谢谢!

getSignature() 的 return 应该是 UIImage。这是签名的存储图像。

@IBAction func saveButton(sender: UIButton) {
    let image = signatureCaptureField!.getSignature()
    dismissViewControllerAnimated(true, completion: nil)
}

可以访问图片的NSData并保存:

var imageData = UIImagePNGRepresentation(image)
let documentsPath = NSSearchPathForDirectoriesInDomains(.DocumentDirectory, .UserDomainMask, true)[0] as String
let destinationPath = documentsPath.stringByAppendingPathComponent("filename.png")
imageData.writeToFile(destinationPath, atomically: true)

或者创建一个 UIImageView 来显示给用户:

let imageView = UIImageView(image: image)
imageView.sizeToFit()
view.addSubview(imageView)