ILPDFKit 2.0.1

ILPDFKit 2.0.1

测试已测试
Lang语言 Obj-CObjective C
许可 MIT
Released最新版本2020年11月

Derek Blair维护。



ILPDFKit 2.0.1

  • 作者:
  • Derek Blair

ILPDFKit Logo

CI Status Version Carthage compatible Swift License Platform

一个用于在 iOS 中填写 PDF 表单和提取 PDF 数据的简单、体积小巧的工具包,它扩展了 Apple 原生 PDFKit 的 PDFViewCoreGraphics PDF C API

screenshot

特性

  • 使用易于使用的 API 解析和分析 PDF 文件。
  • 填写并保存 PDF AcroForms 为平面不可编辑的 PDF。
  • 处理文本、按钮和组合字段。
  • 使用 PDFDocument、PDFPage、PDFDictionary 和 PDFArray 进行简单的透明度检查。
  • 快速解析、提取和分析 PDF 文档的结构、数据和属性。
  • 处理签名字段。
  • 将 AcroForm 值保存到原始的可编辑 PDF 中。
  • 全面单元和集成测试覆盖率
  • Swift 文档

安装

Cocoapods

source 'https://github.com/CocoaPods/Specs.git'
platform :ios, '11.0'
use_frameworks!

target '<Your Target Name>' do
    pod ILPDFKit
end

然后,运行以下命令:pod install

Carthage

要将ILPDFKit集成到您的Xcode项目中使用Carthage,请在您的Cartfile中指定它。

github "derekblair/ILPDFKit"

运行carthage update以构建框架并将构建的ILPDFKit.framework拖放到您的Xcode项目中。

快速开始

开始使用ILPDFKit的最快方式是查看附带的示例应用。例如,要查看名为'test.pdf'的PDF表单资源,您可以这样做:

let document = ILPDFDocument(resource:"myPDF")
// Manually set a form value
document.forms.setValue("Derek", forFormWithName: "Contacts.FirstName")
// Save via a static PDF.
let flatPDF = document.savedStaticPDFData()

PDF支持

ILPDFKit目前只支持有限范围的PDF版本,不适合需要保存1.3到1.7版本通用PDF文件的生产应用。

以下PDF功能可能导致保存问题:

  1. 线性化的PDF文件(保存后线性化会损坏。文件将可以通过WKWebView,预览和Chrome正确打开,但Adobe阅读器会失败)

  2. 对象流(此库目前无法保存1.5版本中引入的对象流中存储的字段,使用对象流的文件有时也称为压缩文件,因为对象流可以压缩文件中的PDF对象)。

使用

填写表单

pdfViewController = ILPDFViewController(resource:"test.pdf")
window.rootViewController = pdfViewController
// Have fun filling out the form.

显式获取/设置表单值

for form in pdfViewController.document.forms {
	// Get
	let formValue = form.value;
	let formName = form.name; // Fully qualified field name.
	// Set
	form.value = "foo";

	// If the form is visible on screen it will updated automatically.
	// You can access the actual associated widget annotation view as below.
	// let widgetView = form.associatedWidget()
}

表单字段的自定义样式

所有字段都可以轻松自定义样式。

捐赠

非常感谢捐赠,这有助于 ILPDFKit 的发展。

联系

[email protected]

许可证

(MIT许可证)

版权所有 (c) 2020 Derek Blair <[email protected]>

任何人经被许可或得到本软件以及相关文档副本(以下简称“软件”)的拷贝后,可以不受限制地(包括但不仅限于)使用、复制、修改、合并、发布、分发、再许可和/或出售软件拷贝,并允许得到软件的个人这样做,但不包括以下情况:

以上版权声明和许可声明应包括在所有拷贝或实质性部分中。

软件按原样提供,不得保证任何形式,明示或暗示,包括但不限于适销性、适用于特定目的和非侵权性。在任何情况下,作者或版权所有者不对任何要求、损害或其他责任负责,无论这些责任基于合同、侵权或其他法律依据,以及软件本身或其使用或与其他软件一起使用产生的任何后果。