PDFTouch SDK

PDFTouch SDK

A fast and customizable Objective-C framework for reading and rendering PDF files in iPhone and iPad apps. Build PDF reader apps or use it as a PDF viewer in your existing apps.

  • Language: Objective-C
    Framework: UIKit
    Platform(s): iPad
  • Released: Apr 12, 2012
    Last Update: Nov 17, 2014

Powerful Objective-C PDF Rendering for iPhone and iPad apps

Getting PDF rendering right on the iOS platform is difficult and time consuming. Memory constraints and slow CPU conditions make it very hard to achieve fast PDF rendering. The PDF Touch SDK is the result of months of development time and years of optimization, providing you with a mature and performant solution for adding PDF capabilities to your iPhone or iPad app.

PDFTouch SDK provides a robust framework that is easy to use and customize to your needs. With just a couple of lines of code you can create a PDF view controller and display it in your app. The user interface is very similar to the iBooks app and also features a grid display for page thumbnails. For more details please refer to the Features section below.

Newsstand solution for magazine publishers

Check out the iPad Book / Newsstand PDF starter Kit if you need a complete newsstand solution that works with PDFTouch SDK out of the box.

Download the FREE Trial now and see for yourself how simple it is to add PDF rendering functionality to your app.

PDFTouch SDK for iOS

Hide

Features & Package

Features

  • Fast multithreaded PDF rendering using Grand Central Dispatch.
  • Highly optimized caching algorithm.
  • Offline pre-rendering of pdf pages at different sizes integrated with the caching system.
  • Thumbnail grid display.
  • Pinch to zoom.
  • Double tap to zoom in and out.
  • Text search with highlighting.
  • Outline view (TOC).
  • Bookmarks.
  • Double page mode with left or right lead.
  • Page curl animations.
  • Retina Display ready.
  • Optimized for both the iPhone and iPad.
  • Includes a demo Xcode project demonstrating the common usage of the SDK's features.

Annotations Support

  • Page links
  • Web links
  • Mail links
  • Video
  • Audio
  • Maps
  • Web pages
  • Custom overlays

Package

  • Complete source code of PDFTouch SDK.
  • Demo Xcode project.
  • Documentation with integration instructions.
  • Technical appledoc style documentation.
Hide

Documentation

Code Documentation

All public classes of PDFTouch SDK are documented using appledoc. See the documentation for further information.

Requirements

The source code of PDFTouch SDK is developed on Xcode 6.1 with iOS Base SDK 8.1. PDFTouch SDK works on a deployment target of iOS 7 or greater on armv7, armv7s, arm64 and can be used in ARC and non-ARC projects.

Integration

PDFTouch SDK can be integrated in two ways into your app.

1. Add the binary PDFTouch.framework

  • Drag PDFTouch.framework into the "Frameworks" group of your Xcode project.
  • Add the required libraries as shown in the screenshot below.
  • Add PDFTouch.bundle to your projects resources as shown in the screenshot below.
  • Open the Build Settings tab and apply the following changes:
    • Other Linker Flags -> -all_load -ObjC
  • Add the following import statement everywhere you want to use PDFTouch SDK: #import <PDFTouch/PDFTouch.h> Binary

2. Add PDFTouch.xcodeproj as a dependency

  • Copy the whole PDFTouch folder into your project's root folder.
  • Drag PDFTouch.xcodeproj into the "Frameworks" group of your Xcode project.
  • Add PDFTouch as a target dependency.
  • Add the required libraries as shown in the screenshot below.
  • Add PDFTouch.bundle to your projects resources as shown in the screenshot below.
  • Open the Build Settings tab and apply the following changes:
    • Other Linker Flags -> -all_load -ObjC
    • Add the following paths to "Header Search Paths":
      • "PDFTouch/**"
  • Add the following import statement everywhere you want to use PDFTouch SDK: #import "PDFTouch.h" Source

Sample Usage

1. Set your license key in the app delegate. You can request your license key on this page: http://yakamozlabs.com/license-key.

[[YLPDFTouch sharedInstance] setLicenseKey:@"your-license-key"];

2. Create a YLDocument instance for the PDF file you want to display.

NSString *path = [[NSBundle mainBundle] PathForResource:@"Developers" withExtension:@"pdf"];
YLDocument *document = [[[YLDocument alloc] initWithFilePath:url] autorelease];

3. Create a YLPDFViewController instance and present it as a modal or child view controller.

YLPDFViewController *v = [[YLPDFViewController alloc] initWithDocument:document];
[v setDocumentMode:YLDocumentModeDouble];
[v setDocumentLead:YLDocumentLeadRight];
[v setPageCurlEnabled:YES];
[v setModalPresentationStyle:UIModalPresentationFullScreen];
[v setModalTransitionStyle:UIModalTransitionStyleCoverVertical];
[self.navigationController presentModalViewController:v animated:YES];
[v release];
Hide

F.A.Q

I am developing an application for a customer. Which license should I use? The single app license cannot be used for building applications for your customer since the license cannot be sub-licensed nor transferred to your customer. In that case you will either have to purchase a developer license or have your customer purchase a single app license which you can then use to develop the application. However purchasing the Developer license will be a valuable investment which will pay off if you'll use it in more than one client project.

What's the difference between the Developer and Enterprise license? Both the Developer and Enterprise license allow usage in unlimited number of apps. The only difference is that the Enterprise license doesn't require license key activation. This is especially useful if you offer a product that generates custom iOS apps on demand.

Is it possible to upgrade between different licenses? An upgrade is possible. Contact us for more information or browse to the "My Purchases" section to upgrade your license.

My license is expired. What does this mean? Each of our licenses include 1 year free updates. If you want to keep receiving new updates and support you can do so by paying a renewal fee which is about 25% of the current license price. If you don't renew your license you can still keep using the version you have on hand. It will keep working without any restrictions.

You need to log-in or create an account
  • Create an account
  • Log-in
Please use your real name.
Activation link will be sent to this address.
Minimum 8 characters
Enter your password again

Clicking this button confirms you read and agreed to the terms of use and privacy policy.

X

Save your watchlist

Fill your details below to receive project updates from your watch list - including new versions, price changes and discounts.

I agree to the terms of use and privacy policy.

4 licenses, starting from From » $999.99 14 day money-back guarantee View Licenses
or Get a quote

for customization or integration services

  • Excellent, well written component that saved us a lot of time. Also very active & responsive support.
    CF Christian Fruehwirth
    2 years ago, 0 comments
    Was this helpful?
    Flag 4 of 4 people found this review helpful
  • Awesome Product and very good support. Instantly getting help with all my little issues since iam not a professional coder.
    AP Andre Prior
    2 years ago, 0 comments
    Was this helpful?
    Flag 3 of 3 people found this review helpful
  • The component is very stable for being a fairly new release. I tried all the other open source pdf viewers and they all seemed to be filled with show stopping bugs. To integrate this pdf viewer it was a matter of 10 lines and a few Apple frameworks.
    BW Bryan Williams
    3 years ago, 0 comments
    Was this helpful?
    Flag 3 of 3 people found this review helpful
Post a comment

Or enter your name and Email
  • CG Cory Graham 3 weeks ago
    Hi, I'm working on a project. Using your framework which is awesome by the way. I was wondering if the user can rotate the device and while in the document the orientation can change?
    • Kemal Taskin Developer 3 weeks ago
      Hi Cory, I'm not sure I understand your question. The interface of YLPDFViewController will rotate along with your device. Are you asking if it's possible to switch to double page mode on landscape?
    • CG Cory Graham 3 weeks ago
      Yes.
    • Kemal Taskin Developer 3 weeks ago
      You should initialize YLPDFViewController like this then: ... [v setDocumentMode:YLDocumentModeDouble]; [v setAutoLayoutEnabled:YES]; ...
  • JM Jai Mayers 4 weeks ago
    I'm working on a project where we need to create a pdf output report from a collection of gathered data (including images). We don't want to display this pdf, only to create it and then send it, via SOAP Web Service to a central repository for archiving. I can't find a feature list anywhere on your site, and I'm not having any luck finding documentation other than the reference docs. Would your library be valuable in this use-case? Any help would be appreciated. Thanks
    • Kemal Taskin Developer 4 weeks ago
      Hi Jai, PDFTouch SDK can only be used as a PDF viewer. You'll have to look at other solutions if you want to create PDF files.
  • TN Tri Nguyen 2 months ago
    Hi, Do you have any product for converting DOC/DOCX file to PDF on iOS ? Thanks, Tri Nguyen
    • Kemal Taskin Developer 2 months ago
      Hi Tri Nguyen, We don't have a product for that purpose.