1

我目前在一个库中,它有一个功能需要我捕获屏幕,包括产生它的应用程序 wpf 应用程序。发生的问题是,当函数执行(底部的代码)时,保存的图像会忽略应用程序,例如它的图标仍在任务栏上,但它不可见,但是“在它后面”的其他窗口是。我一直无法更改它,以便应用程序本身位于图像的中心,即使它应该是无论如何。

using (Bitmap printscreen = new Bitmap(Screen.PrimaryScreen.Bounds.Width, Screen.PrimaryScreen.Bounds.Height))
        {
            Thread.Sleep(1000);
            using (Graphics graphics = Graphics.FromImage(printscreen as Image))
            {
                graphics.CopyFromScreen(0, 0, 0, 0, printscreen.Size);
                printscreen.Save(FilePath, ImageFormat.Jpeg);
            }
        }

非常感谢任何帮助。

编辑:嗯......这很奇怪,在重新启动计算机后,代码运行良好,我所有的同胞也在他们的机器上运行,我不确定是什么导致了之前的问题,但它似乎不再存在。

4

2 回答 2

0

嗯......这很奇怪,重新启动计算机后,代码运行良好,我所有的同胞也在他们的机器上运行它,我不确定是什么导致了之前的问题,但它似乎不再存在。

于 2013-11-13T17:15:54.810 回答
0

我在控制台应用程序中尝试了此代码,但没有发现任何问题。确保在调用 CopyFromScreen() 时应用程序的窗口没有最小化和可见。

于 2013-11-12T22:18:48.493 回答