ios - wkwebkit - wkwebview doc




UIWebview(iOS)のDocxサポートですか? (2)

はい、 UIWebViewはdocxをサポートしています。 バンドルからdocxファイルを読み込もうとしましたが、うまくいきました(この例では "DOC1.docx"という名前です):

NSString *path = [[NSBundle mainBundle] pathForResource:@"DOC1" ofType:@"docx"];
NSURL *targetURL = [NSURL fileURLWithPath:path];
NSURLRequest *request = [NSURLRequest requestWithURL:targetURL];
[mywebView loadRequest:request];

サーバー上にあるdocxファイルをどこかに表示しようとしている場合は、単にWebビューに直接ロードすることができます。

NSURL *targetURL = [NSURL URLWithString:@"http://www.central.wa.edu.au/Current_Students/JobsCareersandLeavingCentral/Documents/Resume%20Template.docx"];
NSURLRequest *request = [NSURLRequest requestWithURL:targetURL];
[mywebView loadRequest:request];

私はdocサポートのための公式のリンクをチェックしており、そのdocxはUIWebviewでサポートされていないことを明確にしています。

https://developer.apple.com/library/ios/qa/qa1630/_index.html

しかし、私はまた、いくつかの人がUIWebviewでdocxファイルを開くことができたことを知って、

OpenIn機能を使用しているアプリでwebブラウザ経由でdocxファイルを開くことができません.iOSで docおよびdocxがスタイル情報を失うのなぜですか?iPhoneでMicrosoft Officeドキュメントを開く方法

また、afaik、iOS SafariブラウザはUIWebviewに基づいて構築されており、ブラウザのインターネットからdocxファイルを開くことができます。 しかし、私がテストサーバからdocxをダウンロードすると(ダウンロードしたdocxをシミュレータからインポートしてクロスチェックしたところ、Macで完全に開きます)、UIWebviewで見ることができません。

私は混乱している、docxはサポートされているかどうか? それとも、docxにはいくつかの形式がサポートされています。

ここに私のローディングコードがあります、

    NSURLRequest *request = [NSURLRequest requestWithURL:urlPath];
    [webViewForDocsView loadRequest:request];

なぜかわからないけど、URLスキームを使ってdocxを読み込めなかった(以下のコードはうまくいきませんでした)

 NSURLRequest *request = [NSURLRequest requestWithURL:urlPath];
[webViewForDocsView loadRequest:request];

その代わりにファイルをメモリにロードし(NSDataを使用)、MIMEタイプを使ってデータをロードしました(以下のコードは魅力的でした!)

NSString *path = [urlFileInView path];
NSData *data = [[NSFileManager defaultManager] contentsAtPath:path];


webViewForDocsView.delegate = self;
[webViewForDocsView loadData:data MIMEType:@"application/vnd.openxmlformats-officedocument.wordprocessingml.document" textEncodingName:@"UTF-8" baseURL:nil];




document