public Bitmap Capture(enmScreenCaptureMode screenCaptureMode = enmScreenCaptureMode.Window, int X = 0, int Y = 0, int Width = 0, int Height = 0) { Rectangle bounds; if (screenCaptureMode == enmScreenCaptureMode.Screen) { //bounds = new Rectangle(0, 0, SystemInformation.VirtualScreen.Width, SystemInformation.VirtualScreen.Height); bounds = SystemInformation.VirtualScreen; CursorPosition = Cursor.Position; } else if (screenCaptureMode == enmScreenCaptureMode.Window) { var foregroundWindowsHandle = GetForegroundWindow(); var rect = new Rect(); GetWindowRect(foregroundWindowsHandle, ref rect); bounds = new Rectangle(rect.Left, rect.Top, rect.Right - rect.Left, rect.Bottom - rect.Top); CursorPosition = new Point(Cursor.Position.X - rect.Left, Cursor.Position.Y - rect.Top); } else { bounds = new Rectangle(X, Y, Width, Height); } var result = new Bitmap(bounds.Width, bounds.Height); using (var g = Graphics.FromImage(result)) { g.CopyFromScreen(new Point(bounds.Left, bounds.Top), Point.Empty, bounds.Size); } return(result); }
public Bitmap Capture(enmScreenCaptureMode screenCaptureMode = enmScreenCaptureMode.Window) { Rectangle bounds; if (screenCaptureMode == enmScreenCaptureMode.Screen) { bounds = Screen.GetBounds(Point.Empty); CursorPosition = Cursor.Position; } else { var foregroundWindowsHandle = GetForegroundWindow(); var rect = new Rect(); GetWindowRect(foregroundWindowsHandle, ref rect); bounds = new Rectangle(rect.Left, rect.Top, rect.Right - rect.Left, rect.Bottom - rect.Top); CursorPosition = new Point(Cursor.Position.X - rect.Left, Cursor.Position.Y - rect.Top); } var result = new Bitmap(bounds.Width, bounds.Height); using (var g = Graphics.FromImage(result)) { g.CopyFromScreen(new Point(bounds.Left, bounds.Top), Point.Empty, bounds.Size); } return(result); }
public Bitmap Capture(enmScreenCaptureMode screenCaptureMode = enmScreenCaptureMode.Window) { Rectangle bounds; if (screenCaptureMode == enmScreenCaptureMode.Screen) { bounds = Screen.GetBounds(Point.Empty); CursorPosition = Cursor.Position; } else { var foregroundWindowsHandle = GetForegroundWindow(); var rect = new Rect(); GetWindowRect(foregroundWindowsHandle, ref rect); bounds = new Rectangle(rect.Left, rect.Top, rect.Right - rect.Left, rect.Bottom - rect.Top); CursorPosition = new Point(Cursor.Position.X - rect.Left, Cursor.Position.Y - rect.Top); } var result = new Bitmap(bounds.Width, bounds.Height); using (var g = Graphics.FromImage(result)) { g.CopyFromScreen(new Point(bounds.Left, bounds.Top), Point.Empty, bounds.Size); } return result; }
public Bitmap Capture(IntPtr Handle, enmScreenCaptureMode screenCaptureMode = enmScreenCaptureMode.Window) { Rectangle bounds; var rect = new Rect(); GetWindowRect(Handle, ref rect); bounds = new Rectangle(rect.Left, rect.Top, rect.Right - rect.Left, rect.Bottom - rect.Top); CursorPosition = new System.Drawing.Point(Cursor.Position.X - rect.Left, Cursor.Position.Y - rect.Top); var result = new Bitmap(bounds.Width, bounds.Height); using (var g = Graphics.FromImage(result)) { g.CopyFromScreen(new System.Drawing.Point(bounds.Left, bounds.Top), System.Drawing.Point.Empty, bounds.Size); } return result; }
private void uploadImgur(enmScreenCaptureMode mode) { playSound("snip.wav"); Bitmap result = cap.Capture(mode); result.Save(System.IO.Path.GetTempPath() + "screenshot.png"); result.Dispose(); if (Properties.Settings.Default.EditScreenshotAfterCapture) { uploadImageFile(System.IO.Path.GetTempPath() + "screenshot.png", true); } else { uploadImageFile(System.IO.Path.GetTempPath() + "screenshot.png"); } }
public Bitmap Capture(enmScreenCaptureMode screenCaptureMode = enmScreenCaptureMode.Window) { Rectangle bounds; if (screenCaptureMode == enmScreenCaptureMode.Screen) { bounds = Screen.GetBounds(Point.Empty); CursorPosition = Cursor.Position; } else { var foregroundWindowsHandle = GetForegroundWindow(); bounds = new Rectangle(m_x, m_y, m_width, m_height); } var result = new Bitmap(bounds.Width, bounds.Height); using (var g = Graphics.FromImage(result)) { g.CopyFromScreen(new Point(bounds.Left, bounds.Top), Point.Empty, bounds.Size); } return(result); }
public abstract Bitmap Capture(enmScreenCaptureMode screenCaptureMode = enmScreenCaptureMode.Window);