我写了一个小应用程序,它将监视剪贴板并直接在webbrowser组件中粘贴文本。
...
DocumentWysiwyg = ClipBoardWebBrowser.Document.DomDocument as IHTMLDocument2;
DocumentWysiwyg.designMode = "On";
...
当剪贴板发生变化时,我使用以下方法将剪贴板内容粘贴到webbrowser中:
ClipBoardWebBrowser.Document.Write(Clipboard.GetText(TextDataFormat.Html));
现在,当将任何复制的内容从网页粘贴为html时,我会进入html
span class="Apple-converted-space">Â </span
不属于我从网站复制的html。
那是什么?我怎么能摆脱他们? 任何帮助都非常感谢。这里是google.de的html代码 http://pastie.org/pastes/3706386/text
如何确保粘贴的剪贴板与剪贴板中复制的数据完全相同?
答案 0 :(得分:0)
在Mac上,多次出现的常规空格“”会被转换,使得它们用一个不间断的空格字符替换每个其他常规空间。这样,空格仍然可以在其他每个字符上中断,但保留这样的空格范围。
之所以这样,是因为没有这个技巧,HTML会将多个空格压缩为一个空格。只有字符会禁用换行,因为他们的名字表明它们不会破坏。
除了“Apple-converted-space”之外,还有“Apple-style-span”,但2011年已从Webkit中删除:https://www.webkit.org/blog/1737/apple-style-span-is-gone/
所以回答你的问题:因为Webkit正在填充粘贴板,所以你无法阻止这种行为。