2011-03-24 8 views
0

편집 가능한 NSTextView가 있습니다. 사용자가 다른 글꼴 스타일을 사용하여 특정 동작에 대해 HTML Formate를 준비해야합니다. NSTextView에서 데이터를 검색 할 수있는 사람이 누구인지 제안 할 수 있습니까? , 나는NSTextView에서 데이터 가져 오기

[[pInputText textStorage] words]; 

를 사용할 수 있어요하지만 내가 인 NSMutableString을 얻을 수 아니다있는있는 NSArray를 반환

사람이 문자열/입력 한 내용과 사용자 데이터를 검색하기 위해 나에게 최선의 방법을 제안 할 수 그리고 어떤 형식으로.

답변

2

- (NSString *)convertUnderlineTextToHTML:(NSAttributedString *)_mString 
{ 

    NSArray * exclude = [NSArray arrayWithObjects:@"doctype", @"html", 
         @"head", @"body",@"xml",nil]; 

    NSDictionary * htmlAtt = [NSDictionary 
           dictionaryWithObjectsAndKeys:NSHTMLTextDocumentType,NSDocumentTypeDocumentAttribute,exclude,NSExcludedElementsDocumentAttribute,nil]; 

    NSError * error; 

    NSData * htmlData = [_mString dataFromRange:NSMakeRange(0, [_mString 
                   length]) documentAttributes:htmlAtt error:&error]; 


    NSString * sdat = [[NSString alloc] initWithData:htmlData 
              encoding:NSUTF8StringEncoding]; 

    NSLog(sdat); 

    return sdat; 
} 
_mString이

NSMutableAttributedString *pAttributedString = [pInputText textStorage]; 

NSString *pHtml = [self convertUnderlineTextToHTML:pAttributedString]; 

감사 로한

1

NSTextViewNSText이고, 이는 -string 방법을가집니다. 따라서 [pInputText string은 원하는 것을해야합니다.

TextStorageNSMutableAttributedString의 하위 클래스이므로 속성 문자열을 원하면 [pInputText textStorage]의 결과를 직접 사용할 수 있습니다.

+0

감사 Smorgan입니다

, 내가 확인하고 알려, 나를 위해 작동 – Amitg2k12

0

NSTextStorage은 수퍼 클래스 NSAttributedString : initWithHTML:baseURL:documentAttributes을 사용하는 방법이있는 NSMutableAttributedString의 하위 클래스이므로이 값을 사용하여 원하는 결과를 얻을 수 있습니다. documentAttributes는 NULL 일 수 있습니다. 솔루션 아래