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は扱いが面倒だなと思っていた人もこれを機に触れて見てください。

blog-page_footer_336




blog-page_footer_336




-iOS
-

執筆者:


comment

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

CAPTCHA


関連記事

swift

iOSで画像の任意の場所をぼかし処理する方法

1 はじめに1.1 前提条件2 準備3 実装3.1 ぼかし処理のイメージ画像3.2 サンプルコード4 さいごに はじめに iOSで写真の任意の場所にぼかし処理をしたいケースがありましたので、 iOSで ...

swift

Swift ChartsライブラリとCryptowatchAPIでローソク足を描画してみる。

1 はじめに2 CryptoWatchについて2.1 OHLC3 リクエスト方法3.1 CryptoWatchのAPI3.2 Swiftでの実装方法4 さいごに5 おすすめ書籍 はじめに こんにちは鈴 ...

iOS14を控えた今こそUINavigationBarAppearance

1 はじめに2 UINavigationBarAppearance2.1 タイトルのカスタマイズ2.2 背景のカスタマイズ2.3 UIBarButtonItemAppearance2.4 ボタンタイト ...

swift

【Swift】Full Keyboard Accessが有効な際にボタンの動作が行われない。

1 はじめに2 フルキーボードアクセス3 今回の問題4 対応方法5 再現アプリ5.1 ViewController5.2 ChildView6 動かしてみた7 さいごに8 おすすめ書籍 はじめに こん ...

[Swift]ループできるページングビューをUIScrollViewで作ってみた

1 はじめに1.1 前提条件2 ページングビューとは3 実装3.1 Storyboardの準備3.2 コードの実装4 仕組み5 さいごに はじめに こんにちは、nukkyです。 スライドショーやウォー ...

フォロー

blog-page_side_responsive

2018年7月
1234567
891011121314
15161718192021
22232425262728
293031  

アプリ情報

私たちは無料アプリもリリースしています、ぜひご覧ください。 下記のアイコンから無料でダウンロードできます。