мы работаем над приложением C++ Qt, которое копирует выделенный текст и/или изображения из внешних приложений, изменяет его, а затем вставляет обратно. Поскольку мы работаем на Mac, мы делаем эту часть с помощью Objective-C.
У нас возникли проблемы с попыткой получить изображение из монтажного стола. Он отлично работает для текста, но мы не уверены, как обрабатывать изображения или комбинацию текст+изображение. Поскольку мы не знаем, что может выбрать пользователь, мы должны иметь возможность выполнить общий поиск содержимого монтажного стола, чтобы изменить его и вернуть обратно на монтажный стол.
Мы пробовали это:
//we thought about retrieving some generic item from pasteboard, using NSPasteboardItem
NSArray *classes = [[NSArray alloc] initWithObjects:[NSPasteboardItem class], nil];
NSDictionary *options = [NSDictionary dictionary];
NSArray *auxArray = [[NSPasteboard generalPasteboard] readObjectsForClasses:classes options:options];
NSData *archived_data = [auxArray objectAtIndex:0];
Наше решение для обработки текста было:
NSString *text = [[NSPasteoard generalPasteboard] stringForType:NSStringPboardType];
string text_str = string([text UTF8String]);
Это не сработало, так как мы можем получить выбор пользователя из монтажного стола? Нам нужно получить необработанные байты или содержимое rtf, чтобы изменить его по мере необходимости, а затем поместить его обратно в монтажный стол и вставить обратно, заменив исходный выбор пользователя.
Спасибо!