Скриншоты рабочего стола с Matlab - PullRequest
4 голосов
/ 06 декабря 2011

Сейчас я использую программу MWSnap для захвата и сохранения скриншотов рабочего стола.Я хотел бы найти способ снимать повторяющиеся снимки экрана по таймеру (например, делать снимок экрана каждые 5 минут).

Есть ли способ сделать это с помощью Matlab?Если нет, есть ли у вас какие-либо предложения по другим программам с этой функциональностью?Или есть способ запрограммировать это на C ++ или C #?

Ответы [ 2 ]

3 голосов
/ 06 декабря 2011

Вы можете сделать что-то вроде этого:

i = 1;
while true
    robo = java.awt.Robot;
    t = java.awt.Toolkit.getDefaultToolkit();

    %# Set the capture area as the size for the screen
    rectangle = java.awt.Rectangle(t.getScreenSize());

    %# Get the capture
    image = robo.createScreenCapture(rectangle);

    %# Save it to file
    filehandle = java.io.File(sprintf('capture%d.jpg', i));
    javax.imageio.ImageIO.write(image,'jpg',filehandle);

    pause(300) %# Wait for 5 min
    i = i + 1;
end

Просто нажмите ctrl+break, чтобы завершить программу. (Обратите внимание, что я использовал этот код в качестве части захвата)

0 голосов
/ 06 декабря 2011

Вы можете вызвать Java из Matlab (очень просто) и сделать что-то вроде this .Вы можете вызвать это и сделать паузу на 5 минут и выполнить снова в цикле.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...