2012-02-15 70 views
2

當我手動執行下面的代碼通過一個動作的方式,將NSTextView對象複製文本,然後將其粘貼到像一個文本編輯器或電子郵件客戶端,粘貼的文本是一個很長的字符串。複製NSTextView文本

如何保留文本的格式?

謝謝。

NSString *string = [outputText string]; 

NSPasteboard *pasteBoard = [NSPasteboard generalPasteboard]; 
[pasteBoard declareTypes:[NSArray arrayWithObjects:NSStringPboardType, nil] owner:nil]; 
[pasteBoard setString:string forType:NSStringPboardType] 

回答

2

您不需要做任何事情來實現NSTextView文本的複製。 NSTextViewNSText一個子類,繼承copy:方法。

到當前所選文本複製到剪貼板,只需調用[yourTextView copy:self];

the docs解釋的,如果你的文本視圖設置爲允許豐富的文本,則剪貼板將包含一個普通字符串(NSStringPboardType)和屬性串(NSRTFPboardType)。