gpt4 book ai didi

c# - 如何使用 C#2010 将图表图像复制到剪贴板?

转载 作者:可可西里 更新时间:2023-11-01 03:06:59 26 4
gpt4 key购买 nike

我正在学习 C#,因为我正在编写一个与光谱仪接口(interface)的程序。我已经弄清楚如何从光谱仪获取光谱并将其绘制在 MS 图上。

如何将图表的图像复制到剪贴板以便粘贴到其他程序中?

我正在使用 Visual Studio C# 2010。

我找到了 chart.SaveImage 方法,但我真的宁愿将图像复制到剪贴板,也不愿将其保存到磁盘。我还没有找到 chart.CopyPicture 方法。

我还想出了如何将原始数据作为字符串复制到剪贴板,然后可以将其粘贴到 Excel 工作表并绘制,但我宁愿只复制图像本身。


附加数据:

我可以使用以下代码将图像复制到剪贴板:

spectrumChart2.SaveImage("Image.jpg", System.Drawing.Imaging.ImageFormat.Jpeg);
Image img = Image.FromFile("Image.jpg");
System.Windows.Forms.Clipboard.SetImage(img);

当然有办法直接在剪贴板中获取图像,而无需首先从磁盘文件中保存和检索图像。请让我知道这是如何完成的(在我的一位同事发现这个问题之前)!

最佳答案

要从图表控件获取图像,将其保存到内存流,创建位图,然后将其发送到剪贴板:

using (MemoryStream ms = new MemoryStream())
{
chart1.SaveImage(ms, ChartImageFormat.Bmp);
Bitmap bm = new Bitmap(ms);
Clipboard.SetImage(bm);
}

关于c# - 如何使用 C#2010 将图表图像复制到剪贴板?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2002922/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com