2016-04-06 3 views
0

私のiOSアプリケーション用の.docxファイルに簡単なhtmlを書き込んで単語ファイルを作成しようとしています。 htmlコンテンツには画像の絶対パスも含まれているimgタグがいくつかあります。作成されたファイルは、同じコンピュータ(シミュレータが作成した場所からアクセス)からアクセスしたときに正常に動作しますが、他の人にdocxを送信しようとすると画像が失われます。私は次のコードを使用してファイルを作成し、ファイルに書き込みます。目的のcを使用して画像を含む単語ファイルを作成する

私はdocxファイルに埋め込みたいと思います。どのように達成するのですか?

NSString *userText = @"Hello, world!"; 

NSMutableString *html = [NSMutableString stringWithFormat:@"<html><body><h1>%@</h1><hr><br/> <img src=\"icon.png\"/></body></html>", userText]; 

NSString *docsFolder = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES)[0]; 

NSString *filename = [docsFolder stringByAppendingPathComponent:@"sample.docx"]; 

NSError *error; 
[html writeToFile:filename atomically:NO encoding:NSUTF8StringEncoding error:&error]; 
if (error) { 
    NSLog(@"Error occured"); 
} 
+0

私は、 '.docx'拡張子を持つファイルにhtmlコンテンツを書くだけで、それが有効なdocxファイルになることは間違いありません。 –

+0

実際、私が知る限り、docxファイルは実際にはジップアーカイブであり、これはドキュメントがイメージを持っている方法です。 –

答えて

0

あなたが参照している絶対パスは次のとおりです。

\ icon.pngのこれは、ローカルフォルダに保存されたイメージをロードします。イメージをリモートで読み込むには、イメージをホストし、httpパスを次のように指定します。http://www.abcd.com/images/icon.png

+0

私はdocxファイルに埋め込みたい。どのように達成するのですか? – mdanishs

+0

iOSアプリケーション内でdocxファイルを作成するには、[libopc](http://libopc.codeplex.com/releases/view/70014) – iSaalis

0

docxは実際には特定の構造を持つZIPファイルです。画像をZIPファイルに入れておく必要があります。 the specificationまたはother documentationを参照してください。すばやく見ると、メインのHTMLファイルと同じZIPディレクトリにイメージを置く必要があるようです。

関連する問題