属性付きのテキストを含むがNSTextView
あります (構文の強調表示)。Gmail のテキスト ウィンドウに貼り付けられるように、構文を強調表示したままにするコピー オプションを用意しようとしています。現在、コピーして貼り付けても強調表示は表示されませんが、このスタックオーバーフローページから次のセクションを直接コピーすると:
- (void) copyAsRTF
{
NSPasteboard *pateboard = [NSPasteboard generalPasteboard];
NSData * rtfData = [[self textStorage] RTFFromRange: [self selectedRange]
documentAttributes: nil];
if (rtfData)
{
NSString * test = [[NSString alloc] initWithData: rtfData
encoding: NSUTF8StringEncoding];
[pateboard declareTypes: @[NSRTFPboardType]
owner: self];
[pateboard setData: rtfData
forType: NSRTFPboardType];
} // End of we had data
} // End of copyAsRTF
そしてそれをgmailに貼り付けると、完全な構文が強調表示されて問題なく貼り付けられます。上記のコードは、RTF コードを生成するために使用するものであり、test
変数が生成されているため、適切な RTF が生成されることを確認できます。
ここで私が間違っていることはありますか?私の理解では、これはうまくいくはずです。
(複数のブラウザー (Chrome、Safari、Firefox) で試したことに注意してください)。