高质量全屏截图 VB.Net

Ton*_*ony 4 vb.net

我正在尝试向我的程序添加一项功能,以便在用户单击按钮时截取用户屏幕的完整屏幕截图。我让程序截取屏幕截图并打开一个文件对话框进行保存,保存工作正常。问题是,无论我如何保存屏幕截图,保存的图像都有明显的质量损失和文本和内容周围的像素化。这是一个大问题,因为我需要保存的图像与在用户屏幕上看到的完全一样,我根本不会有任何质量损失。我试图将图像另存为 jpg 和 png,两者都给我带来了质量损失。我想知道是否有人可以向我指出一些代码或方法,使我能够以与用户屏幕相同的质量保存屏幕截图。如果可能,我想将图像保存为 JPG 或 PNG。任何帮助将不胜感激!

Rom*_*ain 5

获取Bitmap格式的图片,保存为bmp。

Private Function TakeScreenShot() As Bitmap

    Dim screenSize As Size = New Size(My.Computer.Screen.Bounds.Width, My.Computer.Screen.Bounds.Height)

    Dim screenGrab As New Bitmap(My.Computer.Screen.Bounds.Width, My.Computer.Screen.Bounds.Height)

    Dim g As Graphics = Graphics.FromImage(screenGrab)

    g.CopyFromScreen(New Point(0, 0), New Point(0, 0), screenSize)

    Return screenGrab

End Function
Run Code Online (Sandbox Code Playgroud)

  • JPG 和 png 不足以存储图像的所有细节,因此您将损失质量。 (2认同)