Создание снимка экрана в C#

Создание снимка экрана в C#

Bitmap bmp = new Bitmap(Screen.PrimaryScreen.Bounds.Width, Screen.PrimaryScreen.Bounds.Height); // Определяем размер будущего изображения
graph = Graphics.FromImage(bmp);
graph.CopyFromScreen(0, 0, 0, 0, bmp.Size); // Фотографируем экран
bmp.Save("C:\\1.bmp");
graph.Dispose();

Скачать пример

Поблагодарить автора

6 Responses to Создание снимка экрана в C#

  1. А как это встроить в Windows Forms чтобы скрин по нажатию кнопки делался?

    А ещё если не трудно можете объяснить пожалуйста как чтобы скрины начинали делаться по нажатию кнопки 24 раза в секунду а при нажатии на другую кнопку прекращались и сохранялись в папку?

  2. В первом случае нужно просто скопировать и вставить код в обработчик события нажатия кнопки, а во втором нужно делать таймер:

    Timer myTimer = new Timer ();

    myTimer.Elapsed += new ElapsedEventHandler ( timerEvent );

    myTimer.Interval = 1000 / 24;

    myTimer.Start ();

    int i=0;

    public static void timerEvent ( object source, ElapsedEventArgs e )

    {

    Bitmap bmp = new Bitmap (Screen.PrimaryScreen.Bounds.Width, Screen.PrimaryScreen.Bounds.Height); // Определяем размер будущего изображения

    graph = Graphics.FromImage (bmp);

    graph.CopyFromScreen (0, 0, 0, 0, bmp.Size); // Фотографируем экран

    bmp.Save («C:\\»+i+".bmp");

    i++;

    graph.Dispose ();

    }

  3. Ну про первый случай я сам так пытался сделать, но большинство тегов после этого подсвечивается красным. Например graph подсвечивается красным, может его в using надо объявить?

Оставить комментарий

Your email address will not be published. Required fields are marked *

*

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>