ios在项目中打开word文档、ppt等总结

最近在项目开发中遇到下载附件文档预览需求,在这里总结一下我的实现方法,本文最后会附带我写的demo下载地址

这里我总结了三种实现方法(1)用webView预览(2)通过UIDocumentInteractionController实现跳转(3)应用Quick Look系统框架,下面依次介绍各个方法实现

首先来看用webView这个比较常用,不做过多解释,代码如下:

_webView = [[UIWebView alloc]initWithFrame:self.view.bounds];
    _webView.delegate = self;
    NSURLRequest *request = [NSURLRequest requestWithURL:_url1];
    [_webView loadRequest:request];
    [_webView setScalesPageToFit:YES];
    [self.view addSubview:_webView];

第二种应用UIDocumentInteractionController实现方法如下:

//先初始化对象,以及设置弹出方式
_documentInt = [UIDocumentInteractionController interactionControllerWithURL:_url2];
    [_documentInt setDelegate:self];
    [_documentInt presentPreviewAnimated:YES];
    [_documentInt presentOptionsMenuFromRect:CGRectMake(0, 0, 375, 667) inView:self.view  animated:YES];
//然后实现相应代理方法
- (UIViewController*)documentInteractionControllerViewControllerForPreview:(UIDocumentInteractionController*)controller
{
     return self;
}
- (UIView*)documentInteractionControllerViewForPreview:(UIDocumentInteractionController*)controller
{
     return self.view;
}
- (CGRect)documentInteractionControllerRectForPreview:(UIDocumentInteractionController*)controller
{

     return self.view.frame;
}
//点击预览窗口的“Done”(完成)按钮时调用
- (void)documentInteractionControllerDidEndPreview:(UIDocumentInteractionController*)_controller
{
    [_documentInt dismissPreviewAnimated:YES];
}

第三种Quick Look,用这个方法需要导入QuickLook.FrameWork框架,代码如下:

//初始化对象
QLPreviewController *myQlPreViewController = [[QLPreviewController alloc]init];
    myQlPreViewController.delegate =self;
    myQlPreViewController.dataSource =self;
    [myQlPreViewController setCurrentPreviewItemIndex:0];
    [self presentViewController:myQlPreViewController animated:YES completion:nil];
//实现代理方法
- (NSInteger)numberOfPreviewItemsInPreviewController:(QLPreviewController *)controller
{
    return 1;
}
- (id)previewController:(QLPreviewController *)controller previewItemAtIndex:(NSInteger)index
{
    //    NSString *fileName = [self.listDic objectForKey:@"fileName"];
    //    NSString* path = [NSHomeDirectory()stringByAppendingPathComponent:[NSStringstringWithFormat:@"Documents/%@",fileName]];

    return _url3;

}

demo下载地址:https://github.com/zk1947/ZKDemoALL

时间: 2024-08-05 16:52:39

ios在项目中打开word文档、ppt等总结的相关文章

C# 中使用word文档对图像进行操作

C# 中使用Word文档对图像进行操作 Download Files: ImageOperationsInWord.zip 简介 在这篇文章中我们可以学到在C#程序中使用一个Word文档对图像的各种操作.图像会比阅读文字更有吸引力,而且图像是与内容紧密相关的.有时图像可以将内容描述的更为清晰,就像使用图表显示某一周期内的数据变化. Spire.Doc for .NET(http://www.e-iceblue.com/Introduce/Word-for-net-introduce.html)是

Java实现在线打开word文档并强制留痕/留下痕迹

前言:在OA系统中,时不时的都会伴随着文档流转过程. 比如有的系统中会有领导审批的流程,那么在A领导审批完成后,他的审批痕迹能不能强制保留下来,以供下一步处理文档的专员清晰地参考呢? 我们知道,在本地office打开的文档中,如果点击 审阅---修订,就会将编辑的记录跟踪下来留下痕迹. 我们在线办公的系统中能不能直接将这一步由我们系统来做,避免出现用户操作不一致最终没留下痕迹的现象呢? 这些需求在分析后看似很复杂,甚至想要实现时摸不着头脑. 本篇文章直接介绍一个中间件技术-----pageoff

WinXP系统打开Word文档会弹出“打开方式”界面怎么办

WinXP系统打开Word文档会弹出"打开方式"界面怎么办 Word是微软公司开发的一个文字处理器应用程序,我们在日常办公中经常会使用到它.不过,最近有些XP系统用户反馈,电脑已经安装过Office,不过在打开Word文档时,总会弹出打"打开方式"界面,并提示选择你想用来打开此文件的程序,这该如何解决呢? 原因分析: 如果XP系统xitongcheng.com/xp/中安装过Office软件,而现在出现打开方式的界面,很有可能是文件关联出错了,或是你安装过别的Off

WebBrowser打开Word文档的一些注意事项

WebBrowser打开Word文档的一些注意事项 分类: C#word2010-03-31 21:26 5640人阅读 评论(3) 收藏 举报 webbrowser文档browser工具objectsql server 2009年09月27日 星期日 17:37 忙乎了多日,终于将WebBrowser中Word工具栏中搞定 在题库管理系统中,需要将试题显示出来,并进行编辑.于是,每道题都存储为一个Word文件,并保存在SQL Server中,在浏览试题库时,用WebBrowser控件显示试题是

c#中操作word文档-四、对象模型

转自:http://blog.csdn.net/ruby97/article/details/7406806 Word对象模型  (.Net Perspective) 本文主要针对在Visual Studio中使用C# 开发关于Word的应用程序 来源:Understandingthe Word Object Model from a .NET Developer's Perspective 五大对象 Application           :代表Microsoft Word应用程序本身 D

在Delphi中处理word文档与数据库的互联 1

在Delphi中处理word文档与数据库的互联 ---- 目前,Delphi被越来越多的人选中作为MIS系统开发中的前台工具.在以Delphi为前台,一些大型数据库为后台的MIS系统中,图形的处理不可避免:即从以Delphi开发的前台界面输入图形,并保存到相应的数据库字段中.在这种形式的图形处理中,BMP文件的处理比较简单,因为Delphi本身有Image和DBImage构件,用这些构件与数据库中可以保存图形的大型字段BLOB比较容易地进行数据交换.以这种方式进行图形处理已应用在许多MIS软件中

c#中操作word文档-一、模板方式写入

转载自:http://blog.csdn.net/fujie724/article/details/5443322 适合模板写入 今天正好有人问我,怎么生成一个报表式的Word文档. 就是文字的样式和位置相对固定不变,只是里面的内容从数据中读取. 我觉得类似这种的一般用第三方报表来做比较简便.但既然要求了Word,只好硬着头皮来. 网上的方法大多数都是从一个GridView或表中获得数据后向Word中添加一个表格. 但不方便实现下面的效果(图1).(以下插图可能需要CSDN用户登录后才能看到)

c#中操作word文档-二、比较全的一份示例

最近两天研究了一下如何使用VS2008(C#语言)输出Word文档.以下是几点总结: 1.非常简单. 2.开发及运行环境要求.操作系统为:WindowsXP(安装.net framework2.0)/Vista/Win7:在操作系统必须安装Word2003完全安装版.这里必须要强调是Word2003完全安装版,因为软件开发及运行都需要一个com组件:Microsoft word 11.0 Object Library.如果不是Word2003完全安装版,可以下载这个com组件,并手动的安装这个c

将一个项目中已有的文档添加到另一个项目中的方法

我本来是在第一个项目中打开Finder,然后直接拖拽到第二个项目中的. 但发现删除第一个项目,第二个项目中直接找不到那几个拖拽过去的文档了. 所以对于我的情况,也就是从网上搞来的代码,需要打开Finder,从第一个项目的文件夹中,将需要的文件(或文件夹)拷入第二个项目的文件夹中. 然后在第二个项目的Xcode界面中点击File -> Add Files to ... -------------------------------------------------------- Xcode这种设