读书人

剪贴板有关问题-求仙人指路

发布时间: 2012-03-25 20:55:17 作者: rapoo

剪贴板问题--求仙人指路
我需要把一段文字和一张图片同时拷贝到clipboard中,之后用户可以把通过Ctrl+V把文字和图片黏贴到word或者excel。注意,把文字和图片拷贝到clipboard中我们可以控制,但用户paste时,我们是无法控制的。
IDataObject dataobj = new DataObject();
dataobj.SetData(DataFormats.UnicodeText, info);
dataobj.SetData(DataFormats.Bitmap, img);
Clipboard.SetDataObject(dataobj, true);
我试过上面的方法,但黏贴的时候,只有文字被黏贴。冰天雪地跪求高人指点~


ps:当我们在word中复制时,里面的文字和图片也会被放到clipboard中,之后内容可以轻易的黏贴到wordpad,excel里。请问有没有高人知道,在word里同时复制文字和图片时,是以什么格式存到clipboard上去的?

[解决办法]
可以设置为HTML格式的文档

C# code
            StringBuilder sb = new StringBuilder();            sb.Append(@"Version:0.9                StartHTML:71                EndHTML:170                StartFragment:140                EndFragment:160                StartSelection:140                EndSelection:160");            sb.Append("<html><body>");            sb.AppendFormat("<span>{0}</span>", "Hello World!");            sb.AppendFormat("<img src='{0}' />", @"C:\1.png");            sb.Append("</body></html>");            Clipboard.SetData(DataFormats.Html, sb.ToString()); 

读书人网 >C#

热点推荐