Blog Post

PSPDFKit 6.5 for iOS

Illustration: PSPDFKit 6.5 for iOS

Introducing PSPDFKit 6.5 for iOS! This release includes first-class Apple Pencil support, 3D Touch features, a completely rewritten and improved forms parser, UI improvements as well as various enhancements and bug fixes. Take a look at our changelog for all the changes, improvements and fixes in this release.

Apple Pencil

PSPDFKit supported the Apple Pencil since version 5.1, but with this release, we’re bringing Apple Pencil support to a new level. It’s now possible to annotate with Apple Pencil while scrolling and tapping in the document with a finger. This feels very natural and enables fast workflows for marking up documents.

Writing with Apple Pencil: the pencil is for making marks

By default, the Apple Pencil behavior is fully automatic: users simply select an annotation tool and start annotating with the Pencil, when it’s available. This is backed by a flexible API that even allows setting the Pencil to always create a particular annotation type without showing any toolbar UI, such as always draw ink or always highlight text. We’ve added a new guide article about the Apple Pencil to explain all this.

We’ve simplified the way third-party stylus SDKs can be integrated with PSPDFKit so that Apple Pencil works alongside them as an additional PSPDFStylusDriver, and tested it using the latest stylus SDKs. You can find out more in the updated third-party stylus support guide.

Stylus list: None, Apple Pencil, FiftyThree, Adonit Jot, Wacom, Pogo Connect

3D Touch

With more and more devices supporting 3D Touch, it makes sense that we also integrate it into PSPDFKit. You can now 3D Touch in a bunch of places and get a preview of the destination for a particular action. Views, where 3D Touch is currently supported, include the thumbnail grid view, the annotations controller, the outline controller, the bookmarks controller and the search controller.

3D Touch Thumbnail Grid

Forms

With PSPDFKit 6.5 for iOS, we completely rewrote our forms parser from the ground up. Read all about these changes in our new guide article, explaining the form architecture in more detail. We also prepared a migration guide, helping you to update any form related logic to the new architecture.

UI Enhancements

We also squeezed a lot of smaller UI improvements into this release. One of them is improved haptic feedback support, which now also includes changing tabs in PSPDFTabbedViewController. There are also improvements to the gallery and a new feature in PSPDFTabbedViewController, which allows you to close all but selected tab.

PSPDFSettingsViewController also received some updates. It is now set up to show only the compatible settings for selected configurations.

Improved Settings Controller

Carthage Support

PSPDFKit is now available via Carthage. In addition to our existing manual integration and CocoaPods options, you now have a great new way to quickly integrate PSPDFKit into your projects. As a PSPDFKit customer, you can find your Carthage URL in the PSPDFKit Portal by choosing the “Use Carthage” tab when downloading PSPDFKit. For more info, check out our new Using Carthage guide.

Carthage Link

API Additions

PSPDFKit 6.5 for iOS also includes some API refinements, making the SDK nicer to use while added a few new features. You can now schedule and group multiple PSPDFRenderTasks together to render more images at once and only get a single completion handler callback when all tasks are finished. This can be done using the new -[PSPDFRenderQueue scheduleTasks:] or -[PSPDFRenderTask groupTasks:completionHandler:] API calls.

We are also improving our Swift support continuously- in this release, we made the PSPDFAnnotationString* keys an enum in Swift, so you can, for example, just use .ink instead of PSPDFAnnotationStringInk.

We’ve also slightly refined fitToWidthEnabled. This property has been changed from type Bool to PSPDFAdaptiveConditional, which means that this can now be set to be adaptive, as well as always enabled or disabled. When set to adaptive, document pages will adjust to the view width when the PSPDFViewController is in a compact height size class environment.

Security is very important to us, that’s why we improved the printing flow, by making the complete print behavior customizable using the new PSPDFPrintConfiguration class. You can select different modes with PSPDFPrintMode to use the default printing mode, choosing from showing the document preview, only show available printers, or set a default printer without any further user interaction required when selecting the print option.

Interactive Flow Choose Printer Only Flow
Interactive Flow Choose Printer Only Flow

A related change is the introduction of a new sharing option PSPDFDocumentSharingOptionFlattenAnnotationsForPrint which is now used by default when printing. This option ensures that we exclude annotations that have been flagged as not printable when preparing a document for printing.

More Improvements

We care very much about details, therefore you’ll find various improvements and fixes all over the framework in this release. For instance, you can now set a cloudy line style for supported geometric annotations using the annotation inspector.

Cloudy Line Style

Authors
Douglas Hill iOS Team Lead

Douglas makes the most of our fully remote setup by frequently traveling around Europe by train. He’s a proponent of iPad as a productivity platform and is obsessive about the details of great user experiences. He’s also an organizer of the NSLondon meetup.

Matej Bukovinski CTO

Matej is a software engineering leader from Slovenia. He began his career freelancing and contributing to open source software. Later, he joined Nutrient, where he played a key role in creating its initial products and teams, eventually taking over as the company’s Chief Technology Officer. Outside of work, Matej enjoys playing tennis, skiing, and traveling.

Stefan Kieleithner iOS Engineer

Stefan began his journey into iOS development in 2013 and has been passionate about it ever since. In his free time, he enjoys playing board and video games, spending time with his cats, and gardening on his balcony.

Explore related topics

Share post
Free trial Ready to get started?
Free trial