Ios 使用Swift 2.0生成PDF
所以我尝试用swift生成PDF。我一直在尝试将目标C转换为swift,目前存在一些我不知道如何修复的错误 代码如下: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
@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
)var textRect=CGRect(0,0,self.myTextView.frame.size.width,self.myTextView.frame.size.height)
在最后一行myString.drawInRect(textRect)上的drawText函数中,我遇到一个错误,无法将类型为“CGRect”的值转换为预期的参数类型。它说预期的参数类型是什么?如果没有,请删除该行并重新键入,但让
drawInRect
函数自动完成,并查看参数占位符的内容。