2016-11-15 3 views
0

속성이있는 문자열을 대지에 넣는 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 : 페이지가 클립 보드에서 데이터를 받아들이는 방식에 버그가있는 것 같습니다.

+0

비슷하지만 오래된 질문 : [NSAttributedString을 (를) pasteboard에 복사] (http://stackoverflow.com/questions/2581407/copy-nsattributedstring-to-pasteboard/2585327#2585327) – Willeke

+0

페이지에 복사하여 페이지에 붙여 넣기도 변경됩니다. 스타일. 나에게 보낸 페이지의 버그처럼 보입니다. – Willeke

+0

이것은 실제로 페이지의 버그입니다. – sakurashinken

답변

1

아무도 아직 아무것도 제공하지 않기 때문에 여기에 접근하지과 같은 대답했습니다

내가 그 단락 스타일이 뒤에있는 가정입니다 만, 여기에 어떤 도움을 주셔서 감사합니다.

시험하지 마십시오.

클립 보드에 무엇이 있는지 검사 할 수있는 간단한 응용 프로그램을 작성하십시오. 그런 다음 TextEdit & 페이지를 열고 &을 앱 내부 및 앱 사이에 붙여 넣으십시오. 클립 보드에 무엇이 있는지보십시오. '붙여 넣기 및 스타일 맞춤'이 이 아니고이 아닌 경우에도 페이지는 특정 양의 '검색 스타일'붙여 넣기를 수행합니다.

TextEdit (또는 )에서 Pages로 복사 할 때 알 수 있듯이이 문제는 앱에만 국한되지 않습니다. 귀하의 목표는 페이지 복사 & 붙여 넣기를 복제하는 것으로 보이지만 가능하지 않을 수도 있습니다.

부록

클립 보드 애플을보고 도움이 필요한 경우는, ClipboardViewer 그것을 할 수있는 샘플 코드가 있습니다. TextEdit 및 Pages에서 복사 할 때 밑줄이 표시된 단어를 비교하면됩니다. iWork 특정 데이터 유형을 포함하여 몇 가지 차이점이 있습니다.

HTH

관련 문제