我需要把一段文字和一张图片同时拷贝到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上去的?
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上去的?
解决方案 »
- dataset 中增加字段,dataGridView未显示
- 如何查询和关闭占用80端口的进程呢? 不包括IIS
- 【第三帖】C# 如何销毁子窗口对象,关于垃圾回收机制,望大家交流
- 发帖求助:解释性语言和编译性语言在实现计算器时的不同
- ******字符串替换************
- 问个小问题关于html的,顺便送点分
- 关于panel控件
- 怎样在C#的winfrom中利用datagrid控件来增加记录。
- 如何把EXCEL的两列数据读取到数据库表中的两列,为什么找不到microsoft.office不存在interop
- C#仿照windows画板
- 使用Chart控件怎么触发鼠标消息?
- visual studio怎么锁定控件(我的是textbox)的位置??使它能够随着窗体的变大而变动。 帮帮我这个菜鸟吧。。。
{
IDataObject iData = Clipboard.GetDataObject();
}你试试这个
也可以是图片啊 word里就可以同时copy文字和图片呀。
问题的关键是 对paste无法掌控 用户可以选择什么时候paste 以及是paste到word还是excel
所以我在想 要以什么格式把文字和图片同时放到剪贴板中 才能word里同时对文字和图片的copy一样 可以paste到wordpad和excel中以我上面那种方式 储存到剪贴板 paste的时候只有文字 图片出不来
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());
RTF在word里是支持的 但excel不兼容
所以我想找 word里copy到剪切板时用的什么格式
copy时 图片是bitmap格式 不能用文件路径啊
我懂你的意思 可是在word和excel里paste我无法控制啊 到时候还是从clipboard里取内容了
在word和excel里paste的时候 文字和图片要能正常显示出来 所以我想知道在word里同时copy的文件和图片 是可以在excel和wordpad里正常paste出来的 我想知道它是以什么格式存到clipboard里的
Copy的时候把内存图像存图片不会?
你的方法确实可行 但把图片保存成文件 放在硬盘上会有一些小瑕疵 比如 临时文件夹的权限问题 时间长了占用太多硬盘空间等。我研究了下在word里copy文字和图片时 clipboard里的格式情况 发现在单独copy图片的时候 里面有很多图片格式 比如bitmap, Png, Gif等 但当文字和图片一起拷贝时 里面却没有图片的格式 IDataObject obj = Clipboard.GetDataObject();
string[] formats = obj.GetFormats();用上面这个方法可以看到剪切板里的所有 格式及其对应的内容 我看了下clipboard里的Rich Text Format格式里对应的内容 发现图片似乎是以位图的格式保存在里面希望高手能指点迷津啊
如果我没记错的话 office 软件 有自己的剪贴板?、、、
office是有自己的剪切板 可是它应该也需要用windows的剪切板吧 否则在非office软件里黏贴的时候 复制的内容就得不到了感觉单独复制图片的时候 是以bitmap的形势存在clipboard里的 而当文字和图片一起copy的时候 就没有bitmap这样的图片格式了 图片似乎变成btye的形势和文字一起放在Rtf格式对应的object里了还望高人指路啊
是的 我觉得copy的时候 也会用到windows剪贴板吧 否则copy到非office软件时 就会有问题