导航:首页 > 文档加密 > ios开发入门pdf

ios开发入门pdf

发布时间:2025-09-06 10:32:10

❶ iOS 原生加载pdf文档(主要功能:跳转指定的页码)

在实际的开发过程中,我们会遇到一些需要显示PDF的场景,比如官方文件(为了保证原有的格式显示正常,通常会做成PDF来展示),同时也会要求跳转到指定的PDF的页码中,这里我们来讨论一个展示PDF并且调整指定的页码的方式。

简单的介绍下加载PDF的几种方式(PDF可能是网络加载的,也可能是本地的)

在这里我使用CGContext加上UICollectionView来实现加载PDF和跳转指定页码,(其他方法暂时不提及)

在自定义的cell中对showView重写set方法,重写cell视图

在RiderPDFView.m文件中绘制视图

在PDFReadViewController.m文件中collectionView的代理方法中加载RiderPDFView视图

pdf阅读器已经开源了框架,具体使用方法如下

CocoaPods 导入

在文件 Podfile 中加入以下内容:

然后在终端中运行以下命令

或者这个命令:

完成后,CocoaPods 会在您的工程根目录下生成一个 .xcworkspace 文件。您需要通过此文件打开您的工程,而不是之前的 .xcodeproj。

❷ iOS PDFKit 开发指北

2017年夏天,在苹果全球开发者大会(WWDC)上,苹果公司终于推出了针对于 iOS 的 PDFKit 支持。PDFKit 自从 MacOS 10.4 以来一直在 AppKit for MacOS 中。但 UIKit 却迟迟得不到支持,尽管苹果公司之前在 iBooks 和 Mail 中使用过 PDFKit , 但是该框架并未向开发人员开房。

PDFKit 包含了大量关于 PDF 相关的功能,例如,打开,修改,绘图和保存 PDF ,也包含了搜索文本。在 iOS 11 后,苹果终于开放了 PDFKit 。目前(虽然离 PDFKit 发布已经过了一年多),但是目前中文资料和 Demo 确实比较少,下面笔者就带着大家简单的了解一下 PDFKit。

主要核心功能如下:

PDFView

PDFDocument

PDFPage

PDFAnnotation

让我看到你们的双手, put your hands up!

引入 #import <PDFKit/PDFKit.h> ,创建 PDFView ,创建之前,首先要创建 PDFDocument ,这里通过文件路径 URl 进行创建。

创建 PDFView ,将 PDFDucument 对象赋给 PDFView。

至此,就实现了 PDF 的读取及显示。

首先获取 PDFDocument 的属性 PDFPage :

通过 PDFPage 的对象方法,可以获取 PDF 的缩略图,这里需传入图片的 size:

创建 collectionViewCell ,通过 collectionView 就可以实现一个大致的功能。

点击跳转

获取 cell 的点击事件,取出所点击的 PDFPage 对象,用下述方法进行跳转:

PDFOutline 是一个层级关系的对象,他表示 PDF 的大纲(也就是我们常用的书签)。每个 PDFOutline 对象都可通过 childAtIndex: 方法获取出他的孩子对象, 注意 ,这里需要先判断 numberOfChildren ,以确定该 outline 对象存在多少个孩子节点,避免下标超界引发的崩溃。

实现大纲功能

从 PDFDocument 中获取 PDFOutline

遍历 outline 孩子节点(默认只遍历一层)

当点击节点时,判断有无孩子节点,进行当前数组的新增或删除。

这里搜索功能主要靠下述方法实现

调用此方法之前,首先需将 PDFDocument 设置代理,通过 PDFDocument 的代理进行回调。获取 PDFSelection 对象,

再根据 selection 对象显示搜索内容。

调用下述方法即可对 PDFView 进行缩放,

实现双击缩放或还原:

这里通过设置 pdfView 的 scaleFactor 属性即可实现, 注意 : scaleFactorForSizeToFit 属性是当前 PDF 充满屏幕的比例。

GitHub : https://github.com/japho/PDFDemo

本文原地址: https://japho.top/2018/11/21/guideline-of-pdfkit/

阅读全文

与ios开发入门pdf相关的资料

热点内容
命令查看网卡信息 浏览:302
侨丰真空压缩袋价格 浏览:585
西方伦理学pdf 浏览:906
浪潮英信服务器如何打开机箱 浏览:419
如何设置微信加密后别人知道吗 浏览:913
贴吧知乎这类属于什么类型的app 浏览:762
华为云网络系统服务器 浏览:188
阿里云教育云服务器 浏览:755
androidui设计尺寸 浏览:512
如何改变我的世界服务器 浏览:250
程序员的不足之处 浏览:847
编译的五大过程 浏览:989
三个火枪手pdf 浏览:276
opc服务器怎么区分 浏览:845
app重影是什么意思 浏览:616
android更改键盘 浏览:722
压缩机气液分离器结构 浏览:654
曲轴连杆压缩机 浏览:947
怎么删除加密的照片 浏览:167
安卓手机怎么关掉震动感应 浏览:59