Foxit Mobile PDF SDK嚐鮮-IOS篇(2)- 顯示一個PDF文件

前面一篇文章用1mins的時間體驗了SDK的一個ReaderDemo,心癢癢的,好希望自己也可以做一個。要花多少時間?我們來試試。

下載申請的地址這裏再提供下:

https://www.foxitsoftware.com/products/sdk/register.php?product=MobilePDFSDK

填完信息,郵件就會收到試用包的地址了。

開發環境

我的開發環境是Version 7.0.1 (7A1001) ,正常的Xcode 7.0以上就可以了。



其他的,做iOS開發必備的環境有就好,這裏不多說了

第一步,新建工程:

File -> New -> Project…, 然後選擇 iOS -> Application -> Single View Application



填寫工程名名稱(我這裏用AmyTest),然後選擇next:


 選擇一個目錄存放測試工程,再然後點確定,工程就建好了,產生了如下目錄:


第二步,導入SDK

選中AmyTest工程,右鍵選擇菜單中的”Add Files to “AmyTest”



接着,選擇SDK包中的 libs目錄下的“FoxitRDK.framework“點擊Add:



這樣SDK就被加入到工程裏面來了如下圖:


沒完,接着選中工程找到General下的Embedded Binaries,然後點”+”把 ”FoxitRDK.framework” 加入進來:



加入後效果如下圖:

 

接着,我想爲這個測試工程增加一個PDF文件,用發佈包中的Getting_started_ios.pdf吧,依然是選中AmyTest工程,右鍵選擇菜單中的”Add Files to “AmyTest”,然後選擇文件加入,完成後工程長這樣:

好了,工程配置好了,現在要做的是:

第三步,寫代碼(真的幾行代碼就搞定哦):

我現在要顯示剛剛加入工程的”Getting_started_ios.pdf”:

我把所有的代碼都寫在 “ViewController.mm”這個文件裏面

首先,SDK的頭文件導入工程:

#import <FoxitRDK/FSPDFObjC.h>
#import <FoxitRDK/FSPDFViewControl.h>

接着所有的代碼都在了viewDidLoad裏面啦(當然,實際開發肯定不能這麼做,這裏只是想用最簡單的代碼,看看SDK的廬山真面目)

首先當然是

初始化SDK:

代碼如下:

NSString* sn = @"***";
NSString* unlock = @"***";
[FSLibrary init:sn key:unlock];

sn 和unlock太長了,就用*來表示,來源key文件,自己找吧,或者從Demo中copy

接下來就是

加載文檔

//load doc
NSString* docPath= [[NSBundle mainBundle] pathForResource:@"getting_started_ios" ofType:@"pdf"];
FSPDFDoc* doc = [FSPDFDoc createFromFilePath:docPath];
[doc load:nil];

然後就是創建一個FSPDFViewCtrl把剛剛創建的文檔用viewer Control顯示,並且把這個viewer control加入當前的subview:

用View Control 顯示

代碼如下:

FSPDFViewCtrl* myTestViewCtrl;
myTestViewCtrl = [[FSPDFViewCtrl alloc] initWithFrame:[self.view bounds]];
[myTestViewCtrl setDoc:doc];
[self.view addSubview:myTestViewCtrl];

加入上面幾行代碼之後,文檔就可以顯示啦:運行如下:

運行後界面


算了下,上面也就10行代碼,實現了基礎的閱讀。

當然這樣的測試程序是不完整的。

所有創建的對象都要記得在合適的地方釋放哦!這個是常識,就不多說了。期待後面的高級篇。

這裏只是爲了看看實現的效果,哈,這樣的步驟下來,5分鐘夠啦!

最後附上我小修改之後的“ViewController.mm”文件

//
//  ViewController.m
//  AmyTest
//
//  Created by Amy Lin on 16/10/12.
//  Copyright © 2016年 Amy Lin. All rights reserved.
//
#import "ViewController.h"
#import <FoxitRDK/FSPDFObjC.h>
#import <FoxitRDK/FSPDFViewControl.h>
 
 
@interface ViewController ()
@end
@implementation ViewController
- (void)viewDidLoad {
    [super viewDidLoad];
    // Do any additional setup after loading the view, typically from a nib.
    //Init the library
    NSString* sn = @"Z+TAUcB72RW3BpJhSuFwt4duXz45VnpH/k0ZpQf87VHDH2mwbhOAiA==";
    NSString* unlock = @"ezJvj93HtBp39Js1IV0+hIFmZYgzODNkY83TGH/zlPjyJM0Tvptvu+DXH+cnECJXQZAYWWkEyEB3Sykko0KyjhpZcGmxhSBGs5qb5QKFdhM0fAf8FTiEbPUU03fiQtatGQ2FFjarrtLnw39+8euQGdXpRMjwiuS77C05P+co/cxBJ003q+JDAcOjHhxSTccwKfAr6Oa1DRgElhigJBJgHhaluzC6Yw0XHhiMsOsLdf42hkMJGPfI/tU6UsAU1vEr/UJP28iTZ652ItqqNtknKCpNWseaiNeCJ88fV2Mjddqf9dLx80oV22mUAvPhuIGQ5zBZJSAivwVRaW4kJvIhLmgswUv3N/eBKaaDCMn0fxPy+QVs+307hkdla1AswpalMpbvX1YM8O8YMbnAKjrEQOJFc7etKML3fHi8+zAdujq/c3KKx2McE1Nq9+1k+3datd2xg4yh6Zfg4Utxbaq1AEto0I2baW7R18hO/Ud9a0dUbgIya6wy3dP146COck9Ul7niCaOeWpbCjuUZOMXwgctpw5Aq/Rc0mNO5k9amibFBb/Qw8ioopvI5U1Uyk+F9jIFYHSPWkk7+PdfU7iZYKI+aCCbRKGNsX1B2+FD8Z7+TVkcrpzjF1yKvCjKOBkGvB7QHvitjS/mQNHrudTIQdUG2z1bHqVtWRbjHFqkaaVhSQ6z2oHRwDprnq0fQJFr5W+vRfMJ8MA9LBJiEoGunUE7lpiI9VGMlCKVxMHHLDBFJY9eBObYLgwwSxVLoTkOCuQm+B3TtptUq9I7R0gmrx+KAL79q2laOkgxafEKqKl33xXr32CshTvSpIH1CfxBE2IxxUFwNOLU4oNBrh0R2y2KHy7cx74zkPxjTF13FZmV9mdhW+fc985JOFYkHplwMMfXcitLAMTrZFWhUS3i8sp8KcsMufM8PQSZC/ivCnJuuz1ZRV90FZdoaKHw5Aws43PAuDiBWx/hHtpdpQcZv+6ZmuojxfWecXe4zLAEi2zaBRIv1jccNJruh+Oczo+nXTIiZH4H2BW7ZnqRxYhqMYyDEylItVdlKqsG9HJ1cVVNLn+6d53+OtZIsQU2qRCGtdRjgJK67VACVtgQkgk8PUPMB6Mn8UZnBdytrPWvuJzrC8VZ5Zit5vF7u81x/vpBa7yg6AkTlPXjYSazJah3QCSlDfW1laT/dCto1Dqyojnx35DhrElfHx4os9dNH1zc=";
    enum FS_ERRORCODE eRet = [FSLibrary init:sn key:unlock];
    if (e_errSuccess != eRet) {
        return;
    }
    //load doc
    NSString* docPath= [[NSBundle mainBundle] pathForResource:@"getting_started_ios" ofType:@"pdf"];
    FSPDFDoc* doc = [FSPDFDoc createFromFilePath:docPath];
 
    if (e_errSuccess!=[doc load:nil]) {
        return;
    }
 
    //init PDFViewerCtrl
    FSPDFViewCtrl* myTestViewCtrl;
    myTestViewCtrl = [[FSPDFViewCtrl alloc] initWithFrame:[self.view bounds]];
    [myTestViewCtrl setDoc:doc];
    [self.view addSubview:myTestViewCtrl];
}
 
- (void)didReceiveMemoryWarning {
    [super didReceiveMemoryWarning];
    // Dispose of any resources that can be recreated.
}
@end


發佈了18 篇原創文章 · 獲贊 11 · 訪問量 14萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章