我正在尝试使用UIWebview显示MS office文件(word,powerpoint,excel)一些文件有宏启用UIWebview无法显示这些文件任何想法为什么会发生这种情况?有没有办法让UIWebview渲染这些文件?。
注意:如果我可以显示足够的文件内容,我不希望宏工作。
答案 0 :(得分:1)
我知道这已经过时了,但今天我遇到了它。它看起来UIWebView不会直接打开启用宏的Office文件。例如,以下代码失败 -
[webView loadRequest:[NSURLRequest requestWithURL:[NSURL fileURLWithPath:filePath]]];
上面的代码仅对启用宏的Office文件失败 - 它对.docx,.pptx,.rtf,.pdf,.txt等文件起作用。但是,如果我们将文件拉入NSData,然后将mime类型显式提供给UIWebView,则该文件将打开。下面的代码将打开这些启用宏的Office文件 -
// this will open a .pptm file - replace mime type as necessary for other macro-enabled file types
NSData* fileData = [NSData dataWithContentsOfFile:filePath];
[webView loadData:fileData MIMEType:@"application/vnd.ms-powerpoint.presentation.macroEnabled.12" textEncodingName:nil baseURL:nil];
使用.pptm,.ppsm,.potm,.docm,.xlsm进行测试