속성이있는 문자열을 대지에 넣는 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) 응용 프로그램을 포기 주장한다. 페이지, 기조 연설 및 숫자로 처리 할 수있는 대지 데이터를 어떻게 만들 수 있습니까?
업데이트 : Appwork iWork는 문서의 기존 텍스트 위에 붙여 넣은 텍스트의 첫 번째 줄 바꿈까지 현재 스타일을 적용합니다. 나는 문단 스타일이 이것의 배후에 있다고 가정하고 있지만, 여기에 어떤 도움을 주시면 감사하겠습니다.
UPDATE2 : 페이지가 클립 보드에서 데이터를 받아들이는 방식에 버그가있는 것 같습니다.
비슷하지만 오래된 질문 : [NSAttributedString을 (를) pasteboard에 복사] (http://stackoverflow.com/questions/2581407/copy-nsattributedstring-to-pasteboard/2585327#2585327) – Willeke
페이지에 복사하여 페이지에 붙여 넣기도 변경됩니다. 스타일. 나에게 보낸 페이지의 버그처럼 보입니다. – Willeke
이것은 실제로 페이지의 버그입니다. – sakurashinken