在Swift中将图像添加到PDF文件

在Swift中将图像添加到PDF文件,swift,image,pdf,Swift,Image,Pdf,您好,我当前正在尝试获取添加到PDF文件的imageview中的图像 我已经有文本添加到PDF我只是想得到一个图像中添加太多 这是我到目前为止得到的 @IBAction func CreatePDF(sender: AnyObject) { // 1. Create a print formatter let html = "<b>Hello <i>World!</i></b>" let fmt = UIMarkupTex

您好,我当前正在尝试获取添加到PDF文件的imageview中的图像

我已经有文本添加到PDF我只是想得到一个图像中添加太多

这是我到目前为止得到的

@IBAction func CreatePDF(sender: AnyObject) {
    // 1. Create a print formatter

    let html = "<b>Hello <i>World!</i></b>"
    let fmt = UIMarkupTextPrintFormatter(markupText: html)

    // 2. Assign print formatter to UIPrintPageRenderer

    let render = UIPrintPageRenderer()
    render.addPrintFormatter(fmt, startingAtPageAtIndex: 0)

    // 3. Assign paperRect and printableRect

    let page = CGRect(x: 0, y: 0, width: 595.2, height: 841.8) // A4, 72 dpi
    let printable = CGRectInset(page, 0, 0)

    render.setValue(NSValue(CGRect: page), forKey: "paperRect")
    render.setValue(NSValue(CGRect: printable), forKey: "printableRect")

    // 4. Create PDF context and draw

    let pdfData = NSMutableData()
    UIGraphicsBeginPDFContextToData(pdfData, CGRectZero, nil)

    for i in 1...render.numberOfPages() {

        UIGraphicsBeginPDFPage();
        let bounds = UIGraphicsGetPDFContextBounds()
        render.drawPageAtIndex(i - 1, inRect: bounds)
    }

    UIGraphicsEndPDFContext();

    // 5. Save PDF file

    let path = "\(NSTemporaryDirectory())file.pdf"
    pdfData.writeToFile(path, atomically: true)
    print("open \(path)") // command to open the generated file
}
@IBAction func CreatePDF(发件人:AnyObject){
//1.创建打印格式化程序
让html=“你好,世界!”
设fmt=UIMarkupTextPrintFormatter(markupText:html)
//2.将打印格式化程序分配给UIPrintPageRenderer
让render=UIPrintPageRenderer()
render.addPrintFormatter(fmt,起始页面索引:0)
//3.分配paperRect和printableRect
让page=CGRect(x:0,y:0,宽度:595.2,高度:841.8)//A4,72 dpi
让printable=CGRectInset(第0页,第0页)
render.setValue(NSValue(CGRect:page),forKey:“paperRect”)
render.setValue(NSValue(CGRect:printable),forKey:“printableRect”)
//4.创建PDF上下文并绘制
设pdfData=NSMutableData()
UIGraphicsBeginPDFContextToData(pdfData、CGRectZero、nil)
对于1中的i…render.numberOfPages(){
UIGraphicsBeginPDFPage();
let bounds=UIGraphicsGetPDFContextBounds()
render.drawPageAtIndex(i-1,inRect:bounds)
}
UIGraphicsSendPdfContext();
//5.保存PDF文件
let path=“\(NSTemporaryDirectory())file.pdf”
pdfData.writeToFile(路径,原子性:true)
print(“open\(path)”//打开生成文件的命令
}

请尝试正确创建您的路径它是唯一的临时文件,直到我可以将图像添加到pdf文件。在我看来,目录和您的文件之间缺少“/”。顺便问一下,你的问题是什么?什么不起作用?这不是我目前的问题整个代码只添加文本我想在pdf中添加图像,我不知道如何在代码中实现我有你需要做什么?只需创建一个包含图像和文本的布局并将其保存到pdf文件中?创建UIView并将元素绘制到其中,然后将视图图层另存为pdf