iOS

[Swift]PDFKitでPDFの表示

投稿日:2018年7月17日 更新日:

はじめに

こんにちは、nukkyです。
以前、PDFKitを使わないでPDFを表示する方法を書きましたが、今回はiOS11から使用できるPDFKitを使ってPDFを表示したいと思います。
以前の記事はこちら
SwiftでPDFを表示する(iOS11以前対応版)

前提条件

Xcode 9.x
iOS 11 Simulator
Swift 4.0

PDKitの概要

PDFKitは機能に応じて複数のユーティリティクラスに分かれています。

PDFView
PDFを表示するビューアー的な機能を持ちます。

PDFDocument
PDFデータまたはPDFファイルを指します。PDFデータの書き込み、検索、選択などの機能があります。

PDFPage
ページ単位の制御部分です。テキストや注釈、描画にまつわる機能があります。

PDFAnnotation
ページの中の注釈部分です。リンクやフォームなどの機能があります。

PDFOutline
PDFドキュメントの構造です。ツリー構造で表されます。

PDFSelection
PDFドキュメント内のテキスト選択を識別します。

PDFDestination
PDFページ上のポイントを記述します。

PDFThumbnailView
PDFのサムネイル機能を持ちます。

実装

PDFの表示

まずはStoryboard上にUIViewを配置してください、配置したらUIViewのCustom ClassにPDFViewを設定します。

PDFViewをOutletで接続します。接続する前に、UIViewControllerにPDFKitをインポートします。

PDFをPDFViewに読み込みます。PDFViewの.documentプロパティにPDFDocumentを設定すれば表示されます。

autoScalesをtrueにすると、PDFのサイズを自動で調整してくれます。デフォルトはfalseになっています。

PDFの表示モード(PDFDisplayMode)は4種類あります。
デフォルトはsinglePageContinuousです。

 

さいごに

PDFKitのおかげでiOS11以前に比べてだいぶPDFの扱いが楽になりました。PDFKitは表示の機能もかなりありますし、PDFの新規作成や編集なども簡単に扱うことができるのでPDFは扱いが面倒だなと思っていた人もこれを機に触れて見てください。

page_footer_300rect




page_footer_300rect




-iOS
-

執筆者:


comment

メールアドレスが公開されることはありません。

CAPTCHA


関連記事

UnityのiOSネイティブをSwiftで書く

1 はじめに2 UnityのiOSネイティブとは?3 今回作るもの4 必要な構成5 unity-swiftの導入6 必要な機能の実装6.1 Swiftクラスの作成6.2 Objective-C++でU ...

[Swift]アプリのフォアグラウンドに特定の処理を行う。

1 はじめに2 今回の目標3 画面構成4 通知の設定4.1 通知の送信4.2 通知の受信と削除-BaseController5 それぞれの画面の設定5.1 初期画面(FirstViewControll ...

swift

[Swift]ログフレームワーク「CocoaLumberjack」をSwiftで使ってみた

1 はじめに2 準備3 実装3.1 出力先の設定3.2 ログの出力レベルを設定する3.3 ログの出力4 さいごに はじめに こんにちは、nukkyです。 今回はログ管理に便利なライブラリ「CocoaL ...

swift

[Swift]UIViewからUIImageを作成しローカルに保存

1 はじめに1.1 前提条件2 実装2.1 UIViewからUIImageへ2.2 UIImageをローカルに保存2.3 おまけ:画像のリサイズ3 さいごに4 おすすめ書籍 はじめに こんにちは、nu ...

swift

[Swift3] Segmentを使った画面切り替え (Extra View)

1 はじめに1.1 前提条件2 Segmentの用意3 表示したいViewを用意4 Extra Viewsに追加5 Segmentでの切り替え5.1 デフォルトで表示されるViewを設定5.2 Seg ...

フォロー

follow us in feedly

AppLink

英語

page_side_300rect

2018年7月
« 6月 8月 »
1234567
891011121314
15161718192021
22232425262728
293031 

アプリ情報

目標を達成したい方を応援する、TODOアプリもリリースしております。 下記のアイコンから無料でダウンロードできます。

Web版MyCoach

私たちはより広い方にコーチングを知ってもらいたいと考えています。 下記のサイトにて、コーチの方々を紹介しておりますので、よろしければご覧ください。