Я создаю автономную службу mac, которая помещает атрибутные строки на картоном. Когда доступ к данным осуществляется через страницы, строка теряет свои атрибуты. Я использую следующий код для вставки строки, с значением NSReturnTypes, установленным в NSStringPboardType.Вставка строки nsmutableattributed для публичного картона теряет атрибуты на страницах
NSMutableAttributedString *str = [[NSMutableAttributedString alloc] initWithString:@"Yay, I'm a string"];
[str beginEditing];
[str addAttribute:NSUnderlineStyleAttributeName
value:[NSNumber numberWithInt:NSUnderlineByWord]
range:NSMakeRange(0,str.length)];
[str endEditing];
[pboard clearContents];
[pboard writeObjects:[NSArray arrayWithObject:str]];
Приложения без iWork, такие как заметки и почта, могут обрабатывать атрибуты просто отлично, но страницы настаивают на их отбрасывании. Как я могу создать данные, которые можно обрабатывать по страницам, ключевым словам и цифрам?
UPDATE: Очевидно, iWork применяет текущий стиль до первой новой строки текста, который вставлен поверх уже существующего текста в документе. Я предполагаю, что стили абзаца стоят за этим, но будут признательны за любую помощь здесь.
UPDATE2: Это, как представляется, ошибка в том, как страницы принимают данные из буфера обмена.
Аналогичный, но старый вопрос: [Копия NSAttributedString на монтажный стол] (http://stackoverflow.com/questions/2581407/copy-nsattributedstring-to-pasteboard/2585327#2585327) – Willeke
Скопировать в страницах и вставить в страницах также изменяется стиль. Похож на ошибку в страницах для меня. – Willeke
Это действительно ошибка на страницах. – sakurashinken