Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/performance/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 使用Swift 2.0生成PDF_Ios_Swift_Pdf - Fatal编程技术网

Ios 使用Swift 2.0生成PDF

Ios 使用Swift 2.0生成PDF,ios,swift,pdf,Ios,Swift,Pdf,所以我尝试用swift生成PDF。我一直在尝试将目标C转换为swift,目前存在一些我不知道如何修复的错误 代码如下: @IBAction func createPDFOnClick(sender: AnyObject!) { pageSize = CGSizeMake(850,1100) let fileName: String = "makeME.pdf" var path: [AnyObject] = NSSearchPathForDirectoriesInDoma

所以我尝试用swift生成PDF。我一直在尝试将目标C转换为swift,目前存在一些我不知道如何修复的错误

代码如下:

@IBAction func createPDFOnClick(sender: AnyObject!)
{
    pageSize = CGSizeMake(850,1100)
    let fileName: String = "makeME.pdf"
    var path: [AnyObject] = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory,NSUserDomainMask,true)
    let documentDirectory: String = path[0] as! String
    let pdfPathWithFileName: String = documentDirectory.stringByAppendingString(fileName)
    self.createPDF(pdfPathWithFileName)

}

func createPDF(filePath: String){

 UIGraphicsBeginPDFContextToFile(filePath,CGRectZero,nil)
 UIGraphicsBeginPDFPageWithInfo(CGRectMake(0,0,850,1100),nil)
 self.drawBackground()
 self.drawText()
 UIGraphicsEndPDFContext()

}

func drawBackground() {
    let context: CGContextRef = UIGraphicsGetCurrentContext()!
    let rect: CGRect = CGRectMake(0,0,pageSize!.width,pageSize!.height)
    CGContextSetFillColorWithColor(context,UIColor.whiteColor().CGColor)
    CGContextFillRect(context,rect)
}

func drawText() {
    var context: CGContextRef = UIGraphicsGetCurrentContext()!
    CGContextSetFillColorWithColor(context,UIColor.blackColor().CGColor)
    var textRect: CGRect = CGRectMake(0,0,[[self myTextView]frame].size.with, self.myTextView.frame.size.height)
    var myString: String = self.myTextView.text!
    myString.drawInRect(textRect)
}
我的错误如下:

var path:[AnyObject]=NSSearchPathForDirectoriesInDomains(NSDocumentDirectory,NSUserDomainMask,true)

我收到错误“使用未解析的标识符”

var textRect:CGRect=CGRectMake(0,0,[[self-myTextView]frame].size.with,self.myTextView.frame.size.height)

在这里我得到了“期望分隔符”


提前感谢。

您的错误与PDF创建无关,与Swift语法有关

  • 指定目录的参数将作为
    枚举导入Swift
    。因此,对于目录,您的输入应该是某种情况,例如
    NSSearchPathDirectory.DocumentDirectory
    (或者更简洁地说
    .DocumentDirectory
    )。是一个带有静态常量的
    struct
    ,因此它被视为
    struct
    。例如,
    NSSearchPathDomainMask.UserDomainMask
    (或者更简洁地说,
    .UserDomainMask
  • 第二个参数不是Swift语法。尝试:

    var textRect=CGRect(0,0,self.myTextView.frame.size.width,self.myTextView.frame.size.height)


  • 在最后一行myString.drawInRect(textRect)上的drawText函数中,我遇到一个错误,无法将类型为“CGRect”的值转换为预期的参数类型。它说预期的参数类型是什么?如果没有,请删除该行并重新键入,但让
    drawInRect
    函数自动完成,并查看参数占位符的内容。