Giter VIP home page Giter VIP logo

fastpdfkit's Introduction

FastPdfKit


This repository contains the FastPdfKit iOS library with some sample projects.

FastPdfKit is a library that let you show pdf documents in iOS applications bypassing all performances and missing features problems related to QuickLook.

Side scrolling, search with highlighted results, preview and thumbnails, text extraction, overlay views, embedded multimedia, optimization for every device, single and double page are just some of countless features included in FastPdfKit.

For more information, see the FastPdfKit website and the Support website.

Interface iPad Search iPad

Interface iPhone Search iPhone

Features

Reading

Multimedia and Annotations

Kiosk

Text

Miscellanous

Opportunities

Targets

In the Xcode project you'll find some targets

  • FastPdfKit: framework with everything needed to add just the reader to your app;
  • FPKKioskApp: a Kiosk project with document download and ready to use reader class;
  • FPKSimpleApp: a basic project with custom reader;
  • FPKReaderLib: a static library with the ReaderViewControllerand its dependencies;
  • FPKKioskLib: a static library with the kiosk classes;
  • FPKioskBundle: bundle of resources for needed for the kiosk;
  • FPReaderBundle: bundle of resources for needed by the ReaderViewController.

In FastPdfKit.framework and FPKReaderLib the libFastPdfKit.athat contains the compiled core rendering engine.

All the other classes are public and can be customized or subclassed at will.

Every target can be compiled and recompiled for your needs.

Usage guide

This guide is also available as screencast number 4.

  • Clone the repository from github or just grab the compressed archive;

  • Open your existing project in Xcode;

  • Open the downloaded folder in the Finder and locate FastPdfKit.embeddedframework;

  • Drag the framework on the Xcode workspace;

  • Inherit the project options: select the Project an from info tab and configurations line choose FastPdfKitFramework from the drop down list;

  • Open the framework's Resource folder and locate the Snippets.txt document;

  • Copy in you controller interface these lines:

      #import <FastPdfKit/FastPdfKit.h>
      @class MFDocumentManager;
      -(IBAction)actionOpenPlainDocument:(id)sender;
    
  • Copy in your controller implementation these other lines:

      -(IBAction)actionOpenPlainDocument:(id)sender{
          /** Set document name */
          NSString *documentName = @"Manual";
    
          /** Get temporary directory to save thumbnails */
      	NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
    
          /** Set thumbnails path */
          NSString *thumbnailsPath = [[paths objectAtIndex:0] stringByAppendingPathComponent:[NSString stringWithFormat:@"%@",documentName]];
    
          /** Get document from the App Bundle */
          NSURL *documentUrl = [NSURL fileURLWithPath:[[NSBundle mainBundle]pathForResource:documentName ofType:@"pdf"]];
    
          /** Instancing the documentManager */
      	MFDocumentManager *documentManager = [[MFDocumentManager alloc]initWithFileUrl:documentUrl];
    
      	/** Instancing the readerViewController */
          ReaderViewController *pdfViewController = [[ReaderViewController alloc]initWithDocumentManager:documentManager];
    
          /** Set resources folder on the manager */
          documentManager.resourceFolder = thumbnailsPath;
    
          /** Set document id for thumbnail generation */
          pdfViewController.documentId = documentName;
    
      	/** Present the pdf on screen in a modal view */
          [self presentModalViewController:pdfViewController animated:YES]; 
    
          /** Release the pdf controller*/
          [pdfViewController release];
      }
    
  • Choose a pdf from the finder and drop it in the project;

  • Change the documentName to the corresponding name;

  • Call the actionOpenPlainDocument method to open the document;

  • Enjoy.

Changelog

Update May 5th 2014

  • Renamed a few c functions to avoid conflicts.
  • Minor fixes.

Update April 28th, 2014

  • More stability fixes.

Update April 24th, 2014

  • Stability fixes.

Update August 30th, 2013

  • Added exact match option to search.
  • Added exact match and ignore case switch to SearchDisplayViewController.
  • Updated text extraction algorithm.

Update April 19th, 2013

  • Exposed pdf rendering settings.
  • Tweaks and bugfixes.

Update Novembre 27th, 2012

  • Added an xmlURL property to the Kiosk MenuViewController to customize the list without subclassing.
  • Security framework added in xcconfig.

Update November 26th, 2012

  • Improved handling of space glyph in the text
  • Bunch of small tweaks and fixes

Update October 2nd, 2012

  • Fixed a crash while reading certain documents annotations
  • Finally fixed layer shadow (again)
  • Fixed bad overflow mode page position with some documents
  • Sligthy changed starting page behavior, now the slider should update properly
  • Added a visited page system similar to web browser one, check the MFDocumentViewController.
  • You can now set the thumbnail and image cache folders

Update September 4th, 2012

  • Fixed missing iPhone toolbar images
  • Thumbnails are now JPEG
  • Added cache encryption, check MFDocumentViewController's cacheEncryptionKey for details. Security.framework is now REQUIRED.
  • Shadow offset now takes padding into account
  • Uninitialized rect in background op fixed

Update Augusth 30th, 2012

  • Solved rootViewController nil property for window in the app delegate (prevent correct behavior on iOS6)

Update Augusth 28th, 2012

  • Page shadows are back
  • Added cocoaAnnotationsForPage: method to MFDocumentManager to get more Cocoa-friendly annotations data from the pdf

Update 4.0 RC1 (Augusth 1st, 2012)

  • Fixed a bunch crash
  • Fixed a few memory leaks (one quite large)
  • If you dont see Chinese, Japanese or Korean text extracted, please download, unzip and add the CMaps for the language. You can get them here http://partners.adobe.com/public/developer/font/index.html
  • There are a few more options for the embedded thumbnail scroll view and page slider, and you can also choose the label for the individual page

Update 3.4.2 (June 28, 2012)

  • Fix for password protected documents not working anymore

Update 3.4.1 (June 2, 2012)

  • Removed some warnings;
  • Updated Extensions;
  • Fixed episodical crashes.

Update 3.4 (May 17, 2012)

  • Added a new pdf engine. It is enabled by default. You can switch back to the old version by untick the appropriate option in the Settings (this will be available until the final release). Feedback on performances is welcomed.

The new version will attempt to cache pdf page images. If no documentId is set in the MFDocumentViewController, the default folders are in Library/Caches/shared, otherwise the cache is located in Library/Caches/.

Default settings should provide good performance on all devices, from the first iPad to the new one. Thumbnails generation has been moved inside the lib. Customization options for the thumbnail scroll view will be available in the final version.

  • Fixed occasional crash with dual core devices on startup

Update 3.3.3 (March 23, 2012)

  • New rendering approach just for the new iPad (and its weak A5X CPU)
  • Page thumbnails created for Retina Display on the new iPad
  • Core Library built with Xcode 4.2 and iOS 5.0 to avoid poor performances caused by a (reintroduced) CATiledLayer.

Update 3.3.2 (March 14, 2012)

  • Alternate uri definition for modal annotations

Update 3.3.1 (March 13, 2012)

  • Added a supportedOrientation attribute to allow change of supported orientation at runtime
  • Added alternate schemes (prefixes) for annotations' uri

Update 3.3 (March 8, 2012)

  • Improved support for the new retina iPad
  • Fixed (contained) a crash occurring when the pdf provokes a transform stack buffer underflow

Update 3.2.4 (January 30, 2012)

  • Changed font cache again. This should avoid a few cases of creshes due to an NULL font name;

Update 3.2.3 (January 24th, Tuesday, 2012)

  • Removed a few debugging logs
  • Added support to remote link in the ToC/Outline
  • Internal document links work again

Update 3.2.2 (January 13th, Friday, 2012)

  • Fixed tiled overlay view flag being ignored
  • Removed unneeded operator in the pdf scanner
  • Changed pdf detail view timings

Update 3.2.1 (January 5th, 2012)

  • Less aggressive tiled view rendering
  • Fixed a bug in the glyph name matching function
  • Better caching of annotations
  • Removed a few more synchronization point between main thread and worker th

Update 3.2 (January 4th, 2012)

  • New Extended target that supports Extensions;
  • Out of the box supported Extensions:
    • FPKPayPal to create catalogs with items that can be purchased directly from the app;
    • FPKYouTube to place YouTube video on the page.
    • FPKGallerySlide interactive image gallery with manual or automatic advancement;
    • FPKMap to render an interactive google map;
    • FPKGalleryFade image gallery useful for the table of contents;
    • FPKGalleryTap to create a multi interactive image gallery;
    • FPKMessage to show details or alerts;
    • FPKWebPopup to open a web page in a popup view;
  • Updated documentation to version 3.2
  • Included Extensions documentation

For more informations reagarding Extensions git.io/fpke.

Update 3.1.3 (December 30th, 2011)

  • Reworked page metrics synchronization to reduce lag on slow pdfs (more to come).
  • Paged scroll view attribute is accessible again in the MFDocumentViewController public interface.
  • FPK annotations parsing can be disabled by setting MFDocumentViewController's fpkAnnotationsEnabled to NO. Use this if you experience frequent freezes while skimming the pages.
  • You can add multiple MFDocumentViewControllerDelegates by calling MFDocumentViewController's addDocumentDelegate: (and removeDocumentDelegate:). Check the interface for details

Update 3.1.2 (December 16th, 2011)

  • Non-unlocked password protected douments should no more crash the application.
  • Cordinates for taps on the right page are now correct.
  • Fixed a bug involving multibyte fonts compromising search, introduced with unicode normalization.
  • Few memory leaks in ReaderViewController.
  • Overlay views are enbaled on any license again.
  • Newstand is disabled as default due to a memory leak in the download procedure.
  • Variable number of preview image. Check MFDocumentViewController header.

Update 3.1.1 (November 30th, 2011)

  • View size of the reader is now appropriate for the screen configuration (status bar only).
  • Added missing dismiss button in ReaderViewController on iPhone.

Update 3.1 (November 30th, 2011)

  • Reverted to optional tiled overlay view (used for search resulth highlight). This seems to have fixed most 'crashes' (app bein killed actually) while zooming onto a page.
  • A few memory leaks inside the unicode normalization data structures have been fixed.
  • Different handling of document view controller dismissal. It is no more necessary to call -cleanup on the MFDocumentViewController before relasing it. Actual method implementation does nothing.
  • Quite a few small memory leaks fixed.
  • Faster page redrawn on page transition (goToPage, setPageMode, etc.).
  • MFHomeListPdfs is now BookItemView, be careful if you used to subclass the former in your project.
  • Fixed a few errors in Win ANSI and Mac OS Roman encoding. For example, the Unicode character 'LEFT SINGLE QUOTATION MARK' U+2018 will no more be replaced by other characters.
  • Changed font cache management. If you still get problem with [] (notedef) caracter in the text extracted, the cache might be the issue. Set MFDocumentManager's fontCacheEnabled property to NO.
  • Unicode sequences will now be handled as such and the lib will no try (and fail) to compose them to a single unicode codepoint (it is related to search and extraction of text).
  • Lib will now attemp to compose multibyte characted to a single codepoint for search and extraction.
  • Added support to 14 (-2) Adobe Standard Fonts. If you get page empty, blank pages at text extraction check the simulator log and if the font marked as uncompleted is named like one of the files in the FPKCore/standard14fonts folder add that font to your application bundle.
  • Font cache re-enabled. This time seems to work as expected.
  • Default zoom not being set fixed (again).
  • Search and extraction will not crash when certain characters are found. Instead a .notdef (usually it looks like an empty rect) value with be appended to the text.
  • Enhanced search and extraction with Unicode composition and decomposition.
  • Added search match modes:
    • Return an array of MFTextItem representing the matches of teh search term on the page passed as arguments. It is a good choice running this method in a secondary thread.
    • FPKSearchMode has the following values:
    • FPKSearchModeHard - if you search for 'bèzier' it will match 'bèzier' only but not 'bezier'. If you search for 'bezier' it will match 'bezier' only.
    • FPKSearchModeSoft - if you search for term 'bèzier' it will match both 'bezier' and 'bèzier'. Same if you search for 'bezier'.
    • FPKSearchModeSmart - if you search for term 'bezier', it will also match 'bèzier', but if you search for 'bèzier' it will match 'bèzier' only.
    • Ignore case is self explanatory.
    • Default parameters are FPKSearchModeSmart and ignoreCase to YES.

Update 3.0 (November 4th, 2011)

  • Internal changes of the view hierarchy to provide more flexibility and overlay transitions.
  • Revamped ReaderViewController user interface.
  • Better thumbnail scroll view and generation.
  • Added support to video overlay control parameters in the uri.
  • Search now works for terms of unitary length.
  • Added a method to retrieve annotations from the document and provide them as overlays.
  • Slightly changes to MFDocumentViewControllerDelegate callbacks.
  • New activation method with key FPKLicenseKey from Info.plist: no need to pull to get the activated version.

Update 2.1.3 (September 27th, 2011)

Disabled the 2.1.1 font cache due to an implementation oversight. Will be re-introduced as soon as it will behave as expected.

Update 2.1.2 (September 21th, 2011)

  • Cleaned up text search and extraction a little bit. More fixes incoming.

Update 2.1.1 (September 15th, 2011)

  • Added a font cache system for text extraction and search, which should give sensible improvement in search speed especially on documents with a large amount of different fonts.

Update 2.1.0 (September 14th, 2011)

  • Added Overflow page mode to previous Single and Double. Basically, the pdf page will now fill the screen along its width, overflowing under the bottom of the screen if necessary.
  • Added autoMode property. It will tell the MFDocumentViewController to what mode switch when in landscape if automodeOnRotation is YES. Default is MFAutoModeDouble, other option are MFAutoModeSingle and MFAutoModeOverflow.

Update 2.0.3 (August 10th, 2011)

  • Fixed a bug in the transformation returned on double page mode for page with an angle not equal to 0.
  • Added guard to iOS 4.x only methods.

Update 2.0.2 (August 09th, 2011)

  • Added support to link annotation with Remote Go-To actions.
  • Updated manual with latest methods.
  • Added methods to convert points and rect to and from different coordinate systems. Take a look at the MFDocumentViewController for details.
  • Documented the method to get the cropbox and rotation angle for each document page.
  • Finally fixed the bad behavior of the detail (tiled) view on retina device.
  • Fixed a bug involving rendering of the preview pages at low res on retina display introduced a few updates ago.
  • The -didGoToPage callback is now called once when a page is changed on user scroll input.

Update 2.0.1 (July 21th, 2011)

  • Bleeding of the pdf cover images fixed.
  • The embedded UIWebView is now embedded a bit better.

Update 2.0.0-devel (July 12th, 2011)

  • Multimedia support
  • Reorganized project
  • Many other improvements

If you have any other question please post it in the Support Site

fastpdfkit's People

Contributors

onaxxis avatar s1g53gv avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

fastpdfkit's Issues

Randomly shows other document's pages

This is a random, and uncommon bug but it is reported by customers. Sometimes a document will show the first page of another document that was opened, sometimes other pages from other documents as well.

This has only started happening after the last upgrade.

No known trigger or pattern, and it is hard to reproduce.

Also an the thumbnail strip below the pdf, the first page is from another document. Not sure i this is related, but that is more reproducible. Reported from an iPhone 5.

Unable to extract text from PDF

Hello mobfarm,

When I try to extract the text from this pdf:
www.flitelinesoftware.com/example.pdf

I get a result like this:

(� ������������������"#��!��������
� � �(�������!
����%����
;!������������"��!�<
;�������9� ���������&� ��<
((((((
�� ((((((

�����#����������������������

�� ������#���#!���#�����!
��������� ��!'����� !���������#�����! �?��#!��=�"!3������������������

�� ��� ����$�������#���
!� ������������� � ����� ����������
������
�!'���
;������

���������&��� <
((((((!��!��"���(((

�� 9��������������������������!����!����
����!��!����������������!����!����
;��������������������� ���<
�������27+,08����!"����
�� �
����������������������������������������

,HD�������

Any ideas on how I can get the correct text?

Regards,

Ron

Warnings.

A popular set of Xcode warnings can be found here: http://boredzo.org/blog/archives/2009-11-07/warnings (check the bottom of the article for a script that will flip them on for you).

The current FastPDFKit headers throw up a couple small warnings in relation to them, specifically sign comparison mismatches in Stuff.h (as an aside, I'd love to have a more informative name for this header. Whenever I see it come up in the issues sidebar I am confused and blame my coworkers before I realize it is a FastPDF file :-), a few unused constants and some missing newlines at the ends of headers. If you like I can make the changes and submit a pull request. Thanks.

automodeOnRotation causing missing pages in ReaderViewController

When rotating an iPad while viewing a multi-page PDF with automodeOnRotation enabled, it is causing the reader to lose some pages when rotated into portrait mode. For example, if you have a 2-page PDF, load the app in portrait mode, then rotate to landscape, then back to portrait, you'll see that the second page is no longer visible.

iOS7 Appstore Validation Warning which may cause App to be Rejected

The App Store Validator is complaining about the occurrence of "lines" using a non-public API which is pointing to your libFastPdfKit.a lib.

Executing....

find . | grep -v .svn | grep ".a" | grep -v ".app" | xargs grep lines

Produces the output...

Binary file ./FastPdfKit/FPKCore/libFastPdfKit.a matches

fetching problem to run the app store source code properly

hi, There

from app store every functions and annotations are working but when I download the source and run it on xcode some annotations are not working well like image gallery. I've tried it on FPK kiosk app version 4.0, Build 440, Deployment Target 3.2

any suggestion please......

Sticky Notes

Is it possible to read the Stick Notes from pdf File and add them as overlay in the correct page?

Web pages

Remote web pages with modal view

  • http://
    Remote web pages on overlay
  • fpkw://
    Local web pages on overlay
  • fpkh://
    Local web pages with modal view
  • fpki://

FastPdfKit_Sample-Info.plist...... missing

hi that's a fantabulous code, framework out there. i am a newbie. i have downloaded the fastpdfkit and tried to Run it. it is showing an error.

"ProcessInfoPlistFile "/Users/**/Library/Developer/Xcode/DerivedData/FastPdfKit-eezcmepvaslxyjaebudqlkfoocds/Build/Products/Debug-iphonesimulator/FastPdfKit Sample.app/Info.plist" Resources/FastPdfKit_Sample-Info.plist
cd "/Users/**
/Downloads/mobfarm-FastPdfKit-feb4b79 2"
setenv PATH "/Volumes/Xcode/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin:/Volumes/Xcode/Xcode.app/Contents/Developer/usr/bin:/usr/bin:/bin:/usr/sbin:/sbin"
builtin-infoPlistUtility Resources/FastPdfKit_Sample-Info.plist -genpkginfo "/Users/_/Library/Developer/Xcode/DerivedData/FastPdfKit-eezcmepvaslxyjaebudqlkfoocds/Build/Products/Debug-iphonesimulator/FastPdfKit Sample.app/PkgInfo" -expandbuildsettings -format binary -platform iphonesimulator -o "/Users/_
/Library/Developer/Xcode/DerivedData/FastPdfKit-eezcmepvaslxyjaebudqlkfoocds/Build/Products/Debug-iphonesimulator/FastPdfKit Sample.app/Info.plist"

Crash

*** Terminating app due to uncaught exception 'CALayerInvalidGeometry', reason: 'CALayer position contains NaN: [nan nan]'

this happens pressing quickly the buttons on top-left of the PDF Reader (layout buttons).
this happens usually when the PDF is Zoomed In.

Crash caused by overlayViewsForPage call on a deallocated instance of MFDocumentViewController

2011-08-09 16:32:09.336 eDocs[11293:12503] *** -[PDFDocumentViewController overlayViewsForPage:]: message sent to deallocated instance 0xfeba370

PDFDocumentViewController is a sub class of MFDocumentViewController.
This occurs when I load a new MFDocumentViewController with a new MFDocumentManager thereby replacing and deallocating the old one. Apparently there are still some performSelectors happening that cause a message to be sent to the deallocated instance.

Supporting links to other documents

I don't see a way to get a call-back for those currently. Do you need to update the parsing/rendering to handle these links? Or is there some way that I can get a call-back when a link to another PDF document is tapped?

showShadow seems not to work anymore

Assigned to Problems #599. As reported in Tender:

Hello Nicolò, hello FastPdfKit team,

I migrated recently from the older version of the FastPdfKit to the latest version. In the older version a non full screen pdf page had a shadow. In the newer version it's not the case. If I open ReadMe document in your KioskApp the shadow is also not to see. Was it depricated? Setting showShadow in the viewdidload function has no effect to...

best regards,
Ilya

Embedded youtube problem

Embedded youtube link does not work on FastPdfKit Extended and Kiosk applications. Did you stop supporting embedded youtube link ? Is there any solution for that problem ?

iOS 6 and Multimedia Overlay

Assigned to Problems #709. Is there a known issue with using the utube:// multimedia
overlay in ios 6. The video I have included does not show up when
fastpdf is compiled under ios 6 but works fine in ios 5? Is there a
workaround to get it working in ios 6?

iOS 7 interface

Hi guys,

Keen to find out if and when you are planning on updating UI to be optimised for iOS7 based on the new UI guidelines?

Cheers,
Zuhair

Sound

Local sound

  • fpka://
    Remote Sound
  • fpkb://

Frequent crashes on dismissMiniSearchView

Hi I've been experiencing intermittent but frequent crashes related to dismissing of certain views, it's most frequent with the dismissMiniSearchView when closing the minisearchview and it crashes with a similar exception even when dismissing the main modal view (FYI I'm pushing the pdf viewer into the navigation controller stack instead of displaying it as a modal view, here's the implementation - [[self navigationController] pushViewController:pdfViewController animated:YES]; Also, pdfViewController simple extends DocumentViewController_Kiosk and overrides loadView)

The debugger generally breaks at:

-(void)handleSearchGotCancelledNotification:(NSNotification *)notification {
// Setup the view accordingly.

[documentDelegate dismissMiniSearchView];

}

Debug info:

2011-08-22 12:33:39.563 Forums[39887:12503] SVC didLoad
2011-08-22 12:34:01.534 Forums[39887:12503] SVC dealloc
2011-08-22 12:34:08.621 Forums[39887:12503] SVC didLoad
2011-08-22 12:34:14.243 Forums[39887:12503] -[NSPathStore2 dismissMiniSearchView]: unrecognized selector sent to instance 0x62d27c0
2011-08-22 12:34:14.285 Forums[39887:12503] *** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[NSPathStore2 dismissMiniSearchView]: unrecognized selector sent to instance 0x62d27c0'
*** Call stack at first throw:
(
0 CoreFoundation 0x019ca5a9 exceptionPreprocess + 185
1 libobjc.A.dylib 0x01b1e313 objc_exception_throw + 44
2 CoreFoundation 0x019cc0bb -[NSObject(NSObject) doesNotRecognizeSelector:] + 187
3 CoreFoundation 0x0193b966 __forwarding
+ 966
4 CoreFoundation 0x0193b522 _CF_forwarding_prep_0 + 50
5 Forums 0x00025494 -[MiniSearchView handleSearchGotCancelledNotification:] + 68
6 Foundation 0x0138e669 _nsnote_callback + 145
7 CoreFoundation 0x019a29f9 __CFXNotificationPost_old + 745
8 CoreFoundation 0x0192193a _CFXNotificationPostNotification + 186
9 Foundation 0x01384306 -[NSNotificationCenter postNotification:] + 210
10 Forums 0x000295a2 -[SearchManager cancelSearch] + 338
11 Forums 0x000255c0 -[MiniSearchView actionCancel:] + 160
12 UIKit 0x00c1c4fd -[UIApplication sendAction:to:from:forEvent:] + 119
13 UIKit 0x00cac799 -[UIControl sendAction:to:forEvent:] + 67
14 UIKit 0x00caec2b -[UIControl(Internal) _sendActionsForEvents:withEvent:] + 527
15 UIKit 0x00cad7d8 -[UIControl touchesEnded:withEvent:] + 458
16 UIKit 0x00c40ded -[UIWindow _sendTouchesForEvent:] + 567
17 UIKit 0x00c21c37 -[UIApplication sendEvent:] + 447
18 UIKit 0x00c26f2e _UIApplicationHandleEvent + 7576
19 GraphicsServices 0x02403992 PurpleEventCallback + 1550
20 CoreFoundation 0x019ab944 CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE1_PERFORM_FUNCTION + 52
21 CoreFoundation 0x0190bcf7 __CFRunLoopDoSource1 + 215
22 CoreFoundation 0x01908f83 __CFRunLoopRun + 979
23 CoreFoundation 0x01908840 CFRunLoopRunSpecific + 208
24 CoreFoundation 0x01908761 CFRunLoopRunInMode + 97
25 GraphicsServices 0x024021c4 GSEventRunModal + 217
26 GraphicsServices 0x02402289 GSEventRun + 115
27 UIKit 0x00c2ac93 UIApplicationMain + 1160
28 Forums 0x00002909 main + 121
29 Forums 0x00002885 start + 53
)
terminate called throwing an exceptionCurrent language: auto; currently objective-c

FastPdfKit Logo

Hello,

i have just download and started working on example of fastpdf given in github, but when i load any pdf, it is first showing the Logo of fast pdf including url of fastkit.com and fastkit.au.

how can i hide that logo and directly load pdf.

any help will be appreciable , please help me asap.

Thank you.

Namespacing of C functions

Noticing an issue in the linker. _isHex in MFToUnicodeCMapScannerMultibyte.o is conflicting with a function of the same name in another compiled library we're trying to roll in.

While I have reached out to the author of the other library, FastPDF should namespace this C function as well.

fetching problem to run the app store source code properly

hi, There
from app store every functions and annotations are working but when I download the source code and run it on xcode some annotations are not working well like image gallery.
i would be glad if there is any suggetion ....!!!!!!!

Crash with stack trace

I get a crash in handlePageDataInternal method of MFDefferredContentLayerWrapper.

The crash is [MFDocumentViewController mode]: message sent to deallocated instance

Screenshot attached, I copied the relevant console message to the bottom without exposing identifying application data.
PdfKitCrash

tryUnlockWithPassword and isLocked not functioning correctly.

tryUnlockWithPassword and isLocked not functioning correctly.

However when I check the password manually using CGPDF on the same document instance, I get the correct responses. It used to work with the same code.

I tried creating a category with these, it worked to check if the document is locked and replace the isLocked function.

Unlocking is a different story, after unlocking the document instance variable with a category there must be more code because the document still will not load even though the unlock returns successful.

I checked with this code manually on the same instance and everything processes successfully.

CGPDFDocumentUnlockWithPassword(document, [inPassword cStringUsingEncoding:NSUTF8StringEncoding]);

CGPDFDocumentIsEncrypted(document)

CGPDFDocumentIsUnlocked(document)

PDF Rendering slow for iPad 3

Hi Macteo,

Here is the problem I am having. Given that the FastPDFKit PDF document view controller is running in a subview (mind you at fullscreen) and has the following settings:

documentViewController.zoomInOnDoubleTapEnabled = YES;
documentViewController.showShadow = YES;
documentViewController.startingPage = currentPage;
documentViewController.automodeOnRotation = YES;
documentViewController.pageFlipOnEdgeTouchEnabled = YES;
documentViewController.padding = 0;
documentViewController.previewsCount = 6;
[documentViewController setAutoMode:MFDocumentAutoModeOverflow];
documentViewController.documentInteractionEnabled = YES;
documentViewController.view.frame = CGRectMake(0,0, self.view.frame.size.width, self.view.frame.size.height + kNavigationBarHeight);
documentViewController.view.autoresizingMask = UIViewAutoresizingFlexibleWidth | UIViewAutoresizingFlexibleHeight;
documentViewController.view.clipsToBounds = YES;

When initializing the controller the previewCount cache variable seems to handle the consecutive rendering of pages. The problem mostly happens when setting an arbitrary page via [documentViewController setPage:pageNum]; method. The rendering of the specific page happens fairly quickly and the delegate willfocus and didfocus do get called almost immediately but when swiping or tapping the outer regions of the page the previous or next pages require 5-7 seconds to render even though the delegates get called normally as if the page is rendered - this then happens for each page after this arbitrary page change unless you wait on the currently rendered page for 5-7 seconds for the cache thread to catch up (not sure if I am right here but it's just a guess).

reinitializeWithDocumentManager:

Hiyas

I downloaded the FastPDFKit and played around with its samples. This looks like a very cool library with a ton of very cool features. However.. there's one thing I particularly miss, and that's the ability to not only have an initWithDocumentManager, but also something like setDocumentManager.
I don't know how to say it, but currently, there's only one way to display a PDF:

MFDocumentViewController* d = [[MFDocumentViewController alloc] initWithDocumentManager:docManager];
[self presentModalViewController:d animated:YES];

but once that one is open, there is no way to load another PDF in the already open MFDocumentViewController (or derivate). I'd have to close it down, create a new one with the new document and load it the same way.

So what I'm missing is actually something like

[MFDocumentViewController reinitializeWithDocumentManager:newDocManager];

or maybe even better, a way to be able to use a normal initWithNibName: and then use a setupWithDocManager later.

I hope it is understandable what my request is?

Best regards!

PDF-Forms possible?

Dear authors and users of FastPdfKit,

I am trying to evaluate wether the kit could solve the problem I have: I would like to load an arbitrary PDF form and fill it out in my app. Form elements could be textfields, radio buttons, checkboxes and even custom elements like an imagemap.

So far, my approach was to parse the PDF myself and add the needed form elements manually.

Could FastPdfKit help me with this, or is it not designed for that?

Sorry, I know it's not an "issue", but I can't think of a better place to ask.

Thanks for any reply,

lexar

Movies

Embedded movies on overlay (one every two pages due to hardware acceleration needs).

  • fpkv://
    Embedded movies on modal view.
  • fpke://
    Remote movie on overlay (one every two pages due to hardware acceleration needs).
  • fpky://
    Remote movies on modal view.
  • fpkz://

Bookmarks and Thumbnails not relevant to the document

I have a UITableViewController that directly initialises DocumentViewController_Kiosk by passing an instance of MFDocumentManager. Weird issue I'm facing is bookmarks and thumbnails are being shared across documents. I.e. if I bookmark page 20 in A.pdf then, go back to the TableView and open B.pdf then page 20 appears in bookmarks for B.pdf even if B.pdf has just 5 pages. Also the bottom preview shows an accumulated list of thumbnails rather thanks showing thumbnails for the current doc.

I'm considering purchasing a license, need to get past this issue first!

Cheers,
Zuhair

Crash

While opening some pdf files ,it is throwing this error "transfer_fixed_point Excess_Bad_Access".I guess it's happening only in ios7.Please could you help me out,it is very urgent.

Thanks and Regards
Harish

UIView overlay

Custom UIViews can be precisely positioned over the pdf page in page coordinates.

SearchViewController remains visible

  1. Open pdf
  2. Tap "search" button
  3. Tap "close" button.

Pdf is gone, but SearchViewController is visible.

I add


on 521 line in DocumentViewController_Kiosk.m but there is another issue.

  1. Open pdf
  2. Tap "search" button
  3. Tap "close" button.
  4. Open the same pdf again
  5. Tap "search" button
  6. Enter any phrase and try to search. App is crashing.

Mach-O Linker Error when using as framework with target iOS 7

  1. add the latest version as framework
  2. make sure to target iOS 7.0
  3. try to build:

ld: in /path/to/FastPdfKit/FastPdfKit.embeddedframework/FastPdfKit.framework/FastPdfKit(FastPdfKit), too many compact unwind infos in function anon for architecture i386
clang: error: linker command failed with exit code 1 (use -v to see invocation)

  1. workaround: target 6.1 or lower

This (http://stackoverflow.com/questions/18731667/xcode-5-gm-linker-error-too-many-compact-unwind-infos-in-function-anon-for-arch) is exactly the same problem.

Hide the keyboard in the search view

Tested over iPhone GUI.

When you open the search view, if you want to cancel is impossible to hide the keyboard and you need to search something to cancel.

Could be useful hide the keyboard when the user taps the list under the keyboard to allow to cancel the operation.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.