在Swift中将图像添加到PDF文件
您好,我当前正在尝试获取添加到PDF文件的imageview中的图像 我已经有文本添加到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
@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