iOS 載入pdf格式的檔案

來源:互聯網
上載者:User

標籤:adr   ati   int   AC   highlight   type   預覽   點擊   main   

可以載入的方式比較多,暫時先總結兩種:

本地先匯入一份pdf檔案

type 1: 利用UIWebView載入

UIWebView *webView = [[UIWebView alloc] initWithFrame:CGRectMake(0, 0, self.view.bounds.size.width, self.view.bounds.size.height)];    [self.view addSubview:webView];    NSString *path = [[NSBundle mainBundle] pathForResource:@"基於Apache+JMeter" ofType:@"pdf"];    NSURL *url = [NSURL fileURLWithPath:path];    NSURLRequest *request = [NSURLRequest requestWithURL:url];    [webView loadRequest:request];

type 2:利用系統的預覽檔案的架構QuickLook

 首先匯入架構QuickLook.framework

引入標頭檔#import <QuickLook/QuickLook.h>

執行個體化對象

  QLPreviewController *myQlPreViewController = [[QLPreviewController alloc]init];    myQlPreViewController.delegate =self;    myQlPreViewController.dataSource =self;    [myQlPreViewController setCurrentPreviewItemIndex:0];    //此處可以帶導覽列跳轉、也可以不帶導覽列跳轉、也可以拿到View進行Add    [self presentViewController:myQlPreViewController animated:YES completion:^{        NSLog(@"跳轉完成");    }];

聲明代理

<QLPreviewControllerDelegate,QLPreviewControllerDataSource>

 實現協議

#pragma mark - QLPreviewController代理- (NSInteger)numberOfPreviewItemsInPreviewController:(QLPreviewController *)controller{    return 1;}- (id<QLPreviewItem>)previewController:(QLPreviewController *)controller previewItemAtIndex:(NSInteger)index{        NSString *path = [[NSBundle mainBundle] pathForResource:@"基於Apache+JMeter" ofType:@"pdf"];    return [NSURL fileURLWithPath:path];}- (void)previewControllerDidDismiss:(QLPreviewController *)controller{    NSLog(@"預覽介面已經消失");}//檔案內部連結點擊不進行外部跳轉- (BOOL)previewController:(QLPreviewController *)controller shouldOpenURL:(NSURL *)url forPreviewItem:(id <QLPreviewItem>)item{    return NO;}

 

至此結束,載入過程可能比較緩慢,畢竟需要載入本地pdf檔案;

兩種方式比較可以看出,第一種載入比較方便,但是記憶體消耗的比較多,第二種記憶體消耗的比較少,我實際測的是差20MB(用的模擬器)。

mark ---------

 

iOS 載入pdf格式的檔案

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.