Capture Screen (The Express Way in 5 Lines)
Written by Atran, June 21st, 2007
Hello Everyone.
In this article: You will know to capture the screen in 2 ways:
1)- Capture full screen.
2)- Capture region.
Let's Begin:
First make a new Windows Application project.
And make sure your program uses these namespaces:
Code: ( text )
using System; using System.Drawing; using System.Drawing.Imaging; using System.Windows.Forms;
Now, we will begin writing the code:
1)- Create a new bitmap object.
Code: ( text )
//Bitmap screenBitmap = new Bitmap(int width, int height, PixelFormat); Bitmap screenBitmap = new Bitmap(1024, 768, PixelFormat.Format32bppArgb);
2)- Create a new rectangle object.
Code: ( text )
//screenRegion will grab the size of your current screen. Rectangle screenRegion = Screen.AllScreens[0].Bounds;
3)- Create a new graphics object.
Code: ( text )
Graphics screenGraphics = Graphics.FromImage(screenBitmap);
4)- Copy the image from the screen.
Code: ( text )
//screenGraphics will copy the image from the screen. screenGraphics.CopyFromScreen(screenRegion.Left, screenRegion.Top, 0, 0, screenRegion.Size);
5)- Save the image:
Code: ( text )
screenBitmap.Save(@"C:\Screen.jpg", ImageFormat.Jpeg);
Here is the code:
Code: ( text )
Bitmap screenBitmap = new Bitmap(1024, 768, PixelFormat.Format32bppArgb); Rectangle screenRegion = Screen.AllScreens[0].Bounds; // It will copy the current screep image to the bitmap image. Graphics screenGraphics = Graphics.FromImage(screenBitmap); screenGraphics.CopyFromScreen(screenRegion.Left, screenRegion.Top, 0, 0, screenRegion.Size); screenBitmap.Save(@"c:\test.jpg", ImageFormat.Jpeg);
You can also capture a part of the screen (region):
Code: ( text )
/* The Code was: screenGraphics.CopyFromScreen(screenRegion.Left, screenRegion.Top, 0, 0, screenRegion.Size); */ //See the difference. //screenGraphics.CopyFromScreen(intSourceX, intSourceY......); screenGraphics.CopyFromScreen(200, 300, 0, 0, screenRegion.Size);
Hope this help you.
Hey Atran
Thanks!
Its nice stuff with good and simple explanation
Atran /
July 5th, 2007 10:22 PM
Quote:
Originally Posted by Vidhura
Hey Atran
Thanks!
Its nice stuff with good and simple explanation
|
You're welcome, enjoy.......
Great tip
this is something that I can use daily with a few modifications.
I do not use C# though so I thought that you would not mind if I posted the VB code
Code: ( text )
Imports System Imports System.drawing Imports System.Drawing.Imaging Imports System.Windows.Forms Dim screenBitmap As New Bitmap(1024, 768, PixelFormat.Format32bppArgb) Dim screenRegion As Rectangle = Screen.AllScreens(0).Bounds ' It will copy the current screep image to the bitmap image. Dim screenGraphics As Graphics = Graphics.FromImage(screenBitmap) screenGraphics.CopyFromScreen(screenRegion.Left, screenRegion.Top, 0, 0, screenRegion.Size) screenBitmap.Save("c:\test.jpg", ImageFormat.Jpeg)
PKV /
July 31st, 2007 12:25 PM
this was really good one!!
Thanx
|
|
|
|
Stats:
Views: 2685
Comments: 4
|
|