【问题标题】:How to save web page as PDF?如何将网页另存为PDF?
【发布时间】:2016-04-14 20:54:54
【问题描述】:

应用中有一个网页视图,网页视图顶部有一个“保存”按钮。

点击“保存”按钮后,currenturl 将被保存到另一个 ViewController 上的 TableView 中。一切正常。

现在我也想将网页作为 PDF 保存到同一个 TableView 中,点击后可以打开它。我怎样才能做到这一点?

以下是保存currenturl的代码。 savedURLs 是将所有 url 保存在另一个 ViewController 上的数组。

import UIKit

class BrowserViewController: UIViewController {

    @IBOutlet weak var browser: UIWebView!

    @IBAction func saveButtonPressed(sender: AnyObject) {
        if let currentURL = browser.request?.URL?.absoluteString  {
            savedURLs.append(currentURL)
            NSUserDefaults.standardUserDefaults().setObject(currentURL, forKey: "currenturl")
            NSUserDefaults.standardUserDefaults().setObject(savedURLs, forKey: "savedURLs")
            self.performSegueWithIdentifier("toSavingVC", sender: self)
        }
    }

【问题讨论】:

  • 这是 obj-c 的答案,我想你可以将代码转换为 swift stackoverflow.com/questions/7066212/ios-save-web-page-as-pdf
  • 谢谢。我会试着告诉你是否可以。
  • 嗨,尤金,请将其作为答案,以便我确认。谢谢。
  • 完成了,检查一下。谢谢。
  • 嘿,迈克,我只是好奇为什么我的回答没有被接受?

标签: ios swift pdf webview


【解决方案1】:

这是将网页转换为图片的Swift代码,然后你可以将其转换为PDF:

    let sizevid = CGSizeMake(1024, 1100)

    UIGraphicsBeginImageContext(sizevid);

    webview.layer.renderInContext(UIGraphicsGetCurrentContext()!)

    let viewImage = UIGraphicsGetImageFromCurrentImageContext()

    UIGraphicsEndImageContext()

    var imageData = NSData()

    imageData = UIImagePNGRepresentation(viewImage)!

    let documentsPath = NSSearchPathForDirectoriesInDomains(.DocumentDirectory, .UserDomainMask, true)[0] as String

    let pathFolder = String(String(format:"%@", "new.png"))

    let defaultDBPathURL = NSURL(fileURLWithPath: documentsPath).URLByAppendingPathComponent(pathFolder)

    let defaultDBPath = "\(defaultDBPathURL)"

    imageData.writeToFile(defaultDBPath, atomically: true)

    // After converting it in to an image you can easily convert it as pdf.

【讨论】:

  • 很好的答案!保存为图像后,我可以在照片库中找到它,但保存为 pdf 后,我在设备上的任何地方都找不到它。如何在 iPhone 上找到转换后的 pdf 文档? iBooks 什么的?
猜你喜欢
  • 2011-10-27
  • 1970-01-01
  • 2016-02-27
  • 2011-07-17
  • 1970-01-01
  • 1970-01-01
  • 2011-06-18
  • 2018-03-30
  • 1970-01-01
相关资源
最近更新 更多