2

次のコードを実装してNSTextView、アクションを使用してオブジェクト内のテキストをコピーし、それをテキストエディターや電子メールクライアントなどに手動で貼り付けると、貼り付けられたテキストは1つの長い文字列になります。

テキストのフォーマットを保持するにはどうすればよいですか?

ありがとう。

NSString *string = [outputText string];

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

1 に答える 1

2

NSTextViewテキストのコピーを実装するために何もする必要はありません。NSTextViewはのサブクラスでNSTextあり、メソッドを継承しcopy:ます。

現在のテキスト選択をクリップボードにコピーするには、を呼び出すだけ[yourTextView copy:self];です。

ドキュメントで説明されているように、テキストビューがリッチテキストを許可するように設定されている場合、クリップボードにはプレーン文字列(NSStringPboardType)と属性付き文字列()が含まれますNSRTFPboardType

于 2012-02-15T08:51:59.067 に答える