在图像上保存文本标签

时间:2016-02-09 09:05:14

标签: xcode swift image xcode7

我正在构建一个应用程序,它从用户那里获取字符串并使用NSUserDefaults保存它们。然后我恢复它们并将它们粘贴在图像(表格或问卷)的顶部我正在使用.write将图像保存到文件但是当我检查我保存的图像时,我发现它没有保存完整的图像,因此字段的位置是不正确的。我需要能够发送此图像,然后在一张A4纸上打印。

模拟器: http://postimg.org/image/5szujdgw3/

保存的图片: http://postimg.org/image/uq6mea6vb/

为什么不保存完整的图像?

这是我的代码:

import UIKit

class StartMorgagesSave: UIViewController {
  let rectangle = UIBezierPath(rect: CGRectMake(80, 166, 80, 05)) //x , y , width , height 240, 165
  let shapeLayer = CAShapeLayer()
  //let label = UILabel()

  override func viewDidLoad() {
    super.viewDidLoad()
    shapeLayer.path = rectangle.CGPath
    shapeLayer.strokeColor = UIColor.blueColor().CGColor
    shapeLayer.fillColor = UIColor.whiteColor().CGColor
    view.layer.addSublayer(shapeLayer)
    view.pdfData.writeToURL(NSFileManager.defaultManager().URLsForDirectory(.DocumentDirectory, inDomains: .UserDomainMask).first!.URLByAppendingPathComponent("test53.pdf"), atomically: true) // what it is saved as
    view.pdfData.writeToFile("fdfdlo", atomically: false)
    print(NSFileManager.defaultManager().URLsForDirectory(.DocumentDirectory, inDomains: .UserDomainMask).first!.path!)     
  }
  override func didReceiveMemoryWarning() {
    super.didReceiveMemoryWarning()
    // Dispose of any resources that can be recreated.
  }
}

extension UIView {
  var pdfData: NSData {
    let result = NSMutableData()
    UIGraphicsBeginPDFContextToData(result, frame, nil)
    guard let context = UIGraphicsGetCurrentContext() else { return result }
    UIGraphicsBeginPDFPage()
    layer.renderInContext(context)
    UIGraphicsEndPDFContext()
    return result
  }
}

尼尔

0 个答案:

没有答案