Как сохранить в WebArchive webView редактируемый контент? - PullRequest
0 голосов
/ 14 января 2011

Я пытаюсь создать WebArchive из WebView. У меня это работает, но я обнаружил проблему, когда пытаюсь работать с отредактированным контентом. Вот что я сейчас делаю:

[webView setEditable:YES];
WebDataSource *dataSource = [[webView mainFrame] dataSource];

WebArchive *archive = [[WebArchive alloc]
        initWithMainResource:[dataSource mainResource]
        subresources:nil
        subframeArchives:nil];

[[archive data] writeToFile:destinationPath atomically:YES];
[[webView mainFrame]
 loadRequest:[NSURLRequest
     requestWithURL:
     [NSURL fileURLWithPath:destinationPath]
     ]];

Любые изменения, внесенные мной в содержимое в WebView, не сохраняются в WebArchive. Нужно ли фиксировать мои изменения обратно в исходный файл, чтобы это работало? Я хотел бы сохранить его на основе содержимого, которое находится в WebView. Любая помощь будет оценена. Спасибо!

1 Ответ

0 голосов
/ 23 января 2011

Поработав некоторое время, я смог найти ответ на свой вопрос. Вот как я это сделал:

WebResource *dataSource = [[[[webView mainFrame] DOMDocument] webArchive] mainResource];

WebArchive *archive = [[WebArchive alloc]
       initWithMainResource:dataSource
       subresources:nil
       subframeArchives:nil];

[[archive data] writeToFile:@"output.webarchive" atomically:YES];

Надеюсь, это кому-нибудь поможет.

...