Printscreen

Материал из UoPilot
Перейти к навигации Перейти к поиску

Описание

PrintScreen - команда сохранения копии экрана в файл.

Синтаксис

Привязка к окну: опционально.
Работа со свернутым окном: нет.
Работа с перекрытым окном: Да. Привязка к окну обязательна. Aero (темы Windows) должен быть включен. Если был установлен Астер, то он должен быть отключен, а система перезагружена.

PrintScreen <handle> <x> <y> <width> <height> <path>

Где:
<handle> - хендл окна. Для работы с перекрытом окном иногда нужно указывать родительское окно.
<x> - Координата X
<y> - Координата Y
<width> - Ширина, если 'width' = 0, то берётся максимальное возможное значение.
<height> - Высота, если 'height' = 0, то берётся максимальное возможное значение.
<path> - Путь для сохранения изображения.

Примеры

// Пример 1
printscreen 0 0 0 0 0 c:\client window.jpg   //скрин всего экрана
End_script
// Пример 2
printscreen 0 0 0 300 300 c:\client window1.jpg   //скрин от левого вернего угла экрана, размером 300*300
End_script
// Пример 3
printscreen 0 500 500 200 200 c:\client window2.jpg   //скрин экрана от координат 500 500, размером 200*200
End_script
//Пример 4
//Как сделать чтобы скрины не заменялись
repeat 10                                               //повторить 10 раз
    init_arr %a (1) day . month . year _ hour . min . sec   //скрины будут сохраняться в формате: дата_время, можно добавить другие переменные
    printscreen 0 0 0 0 0 c:\%a [1].jpg
    wait 3000                                               //ждать 3 секунды
end_repeat
End_script

Примеры для скринов перекрытых (не свёрнутых!) окон:
Привязка к окну обязательна. Окна могут находиться за пределами экрана. Если на скрине "чёрный квадрат", значит надо указывать родительское окно.

// Пример 6
//Проверить что оператор работает проще на калькуляторе. Запускаем калькулятор. Ctrl + A на рамке.
printscreen workwindow 0 0 0 0 c:\client window3.jpg   //скрин всего рабочего окна
End_script
//Пример 7
set #handle FindWindow ("Калькулятор")                //находим окно "Калькулятор"
printscreen #handle 50 50 0 0 c:\client window4.jpg   //скрин рабочего окна от координат 50 50
End_script
//Пример 8
set #handle FindWindow ("Калькулятор")                    //находим окно "Калькулятор"
printscreen #handle 100 100 80 80 c:\client window5.jpg   //скрин рабочего окна от координат 100 100, размером 80 на 80
End_script

Смотрите также

Findimage

История развития

2.14
Добавил команду сохранения копии экрана в файл:

'PrintScreen <handle> <x> <y> <width> <height> <path>'

Первым параметром указывается хэндл рабочего окна, либо 0 - весь экран. Если 'width' или 'height' =0 то берется максимально возможное значение.

set #x findwindow (Ultima Online - Admin) 
printscreen #x 0 0 0 0 c:\full client window.jpg

2.15
Добавил в команду printscreen возможность делать копию экрана рабочего окна, при указании в качестве handle единицы:

printscreen 1 0 0 0 0 c:\client window.jpg.

2.25
Переделал 'printscreen' и 'findcolor'. Повысил стабильность работы.

2.36
Исправил распознавание переменных в команде 'printscreen'.