我正在尝试将文件中的图像和文件中的文本复制到剪贴板。我的意图是打开一个 word 文档或一个 outlook 电子邮件,并在一个标准粘贴命令(例如 CTRL-V)中粘贴文本和图像。我可以很容易地分别完成这两项工作,但在一次操作中同时完成这两项工作似乎行不通。
这就是我如何让这两个作为单独的操作工作(当然只有相关的代码行,删除了 try/catch 等):
将图像添加到剪贴板:
...
Bitmap imageToAdd = new Bitmap(imageFilePath);
Clipboard.SetImage(imageToAdd);
...
将文本添加到剪贴板:
...
StreamReader rdr = new StreamReader(textFilePath);
string text = rdr.ReadToEnd();
Clipboard.SetText(text);
...
我使用的是 c# 和 .net 2.0 框架,目标是 Windows XP(不久的将来可能是 Vista)。
TIA
最佳答案
您可以使用 RTF,它可以结合文本和图形。请注意,您可以在剪贴板上同时拥有 CF_BITMAP 和 CF_TEXT。但这没有用。当你粘贴到记事本时你会得到文本,当你粘贴到画图时你会得到位图,大多数其他应用程序会选择一个或另一个,但不会同时选择两者。所以它只是学术性的。有点整洁,就像《星际迷航》中的运输机故障一样整洁。但也很乱。
关于c# - 如何将图像和文本作为一个对象复制到剪贴板?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/285042/