Получить скопированные данные с UIPasteboard - PullRequest
0 голосов
/ 22 июля 2010

Я скопировал изображение из UIwebView с помощью буфера обмена и хочу отправить его по почте. Для этого я использую общий монтажный картон для получения данных, но при извлечении данных возникает проблема. Когда я проверяю текущие данные в монтажном картоне, он говоритесли у него есть данные Apple Web Archive типа , как это прочитать. Вот мой код извлечения текста.

UIPasteboard* pasteboard = [UIPasteboard generalPasteboard];
NSArray* array = [pasteboard pasteboardTypes];
for (NSString* type in array) {
    NSLog(@"%@",type);
}
NSString* item = @"Apple Web Archive pasteboard type";
NSData* val = [pasteboard dataForPasteboardType:item];

Я пытался создать UIImage с использованием этих данных, но это нене работает

1 Ответ

1 голос
/ 14 августа 2010

Я не понимаю, что вы подразумеваете под почтой? Вы можете вставить копию изображения веб-страницы прямо в почтовое приложение, и оно появится в виде изображения.

Вы можете перестроить данные по типу монтажного картона Apple Web Archive, если вам нужно вручную. По сути, это документ XML с HTML и фактическими данными изображения внутри. HTML и сопровождающие изображения в кодировке base64. Если вы хотите посмотреть пример архива, сохраните его или, возможно, простую веб-страницу в Safari в виде архива. Откройте файл архива в формате Text Wrangler. Редактирование текста, вероятно, попытается отрендерить его.

Я написал пост о том, как сделать тип картона Apple Web Archive, который мог бы помочь вам понять процесс.

http://mcmurrym.wordpress.com/2010/08/13/pasting-simplehtml-into-the-mail-app-ios/

Я так понимаю, вы пытаетесь отправить его по почте из своего приложения и не используете почтовое приложение?

В этом случае вам, вероятно, придется получить xml из монтажной панели, найти тег, содержащий данные кодированного изображения, декодировать его и создать изображение из декодированных данных.

...