【在 iOS 开发路上的大小事-Day07】除了用 WKWebView 以外,还可以如何在 App 中显示 PDF 档案呢?

前情提要

一般我们要在 App 中显示 PDF 档案,可能会透过 WKWebView 来进行实作
最近在专案开发的时候,也有这个需求,所以就很直觉的使用 WKWebView 来做
但给学长後,学长说不要用 WebView 做,改用 UIScrollView 做
但没试过用 ScrolView 来显示 PDF 过,所以就只好去拜托万能的 Google 大神了
因缘际会下意外发现原来 Apple 有 PDFKit 的框架,所以就改用 PDFKit 来实作了

下面就直接来实作吧

先在画面上拉一个 UIView,并将他的 class 改为 PDFView

接着在 ViewController.swift 里面 import PDFKit,并将 View 的 IBOutlet 拉好

再将要显示的 PDF 档案加进专案内,这里用「TUTK P2P.pdf」这个档案做示范

在 viewDidLoad 里面加入下面的程序码

override func viewDidLoad() {
    super.viewDidLoad()
    let fileURL = Bundle.main.url(forResource: "TUTK P2P", withExtension: "pdf") // 指定专案内的档案路径
    pdfView.document = PDFDocument(url: fileURL!) // 将 PDF 档案路径给 pdfView,让他去显示档案
}

这样就可以了~接着就用模拟器执行看成果吧

成果


PDFView 还有其他应用,这篇只是简单介绍如何在 App 内显示 PDF 档案,其他应用这里就不多介绍了,自己去研究吧~

本篇的范例程序码:GitHub

参考资料:

  1. https://www.pdftron.com/blog/ios/how-to-add-a-pdf-viewer-using-swift/
  2. https://developer.apple.com/documentation/pdfkit
  3. https://developer.apple.com/documentation/pdfkit/pdfview

<<:  Day 05. 安装 Zabbix Server

>>:  Day 05 - 了解FOREIGN KEY 外键限制!

Day 9 专案目录结构

前言 差不多要开始写专案了,今天要来看一下我们专案的目录结构,也会提到一些特别的档案和目录,包括之前...

Day 27:碰到困难问题,演算法也救不了?

上一回我们说旅行推销员问题(TSP)是一个NP困难问题,没有快速的演算法可以解决。 那一个问题怎样叫...

那些被忽略但很好用的 Web API / 简易文字编辑器

学习之後,刻意进行练习能够加深印象。 前面三天我们已经习得 DesignMode、Selectio...

iOS APP 开发 OC 第十一天,使用 typedef 简化 block

tags: OC 30 day 问题:简化block变量的时候,要写好大一串,类型好长。 typed...

Day-23 快速面试之考题大公开!(2)

今天来补充一下”快速面试”还要再补充的地方,现在回想还是怕… 有一家厂商满特别的,一开始面试直接问...