我的应用程序接受从剪贴板粘贴或从浏览器拖动的HTML。
我能够成功获取HTML (片段):
NSPasteboard *pasteboard = [NSPasteboard generalPasteboard];
NSString* nstext = [pasteboard stringForType:NSPasteboardTypeHTML];但是不知道如何获取源文档的URL。
我试过了:
NSLog(@"url: %@", [NSURL URLFromPasteboard:pasteboard]);但不走运--它报告了url: nil。
原则上这是可能的吗?
以防万一,在Windows上,我可以从CF_HTML剪贴板格式字段中获取URL。
发布于 2017-07-25 00:54:51
这对我很有效。为简洁起见,省略了错误检查等:
NSPasteboard *pasteboard = [NSPasteboard generalPasteboard];
NSData *data = [pasteboard dataForType:@"Apple Web Archive pasteboard type"];
NSDictionary *plist = [NSPropertyListSerialization propertyListWithData:data
options:NSPropertyListImmutable
format:NULL
error:nil];
NSDictionary *values = [plist objectForKey:@"WebMainResource"];
NSString *url = [values objectForKey:@"WebResourceURL"];https://stackoverflow.com/questions/45246510
复制相似问题