Author Topic: Название скриншота  (Read 3335 times)

0 Members and 1 Guest are viewing this topic.

Accelerator

  • Зашел в гости
  • *
  • Posts: 4
    • View Profile
Название скриншота
« on: June 26, 2015, 08:32:47 PM »
Как написать что бы через SCREENSHOT создавался скрин и брал название из буфера.
Извиняюсь если была такая тема не нашел.

Oraven

  • Супермодератор
  • Герой форума
  • *
  • Posts: 3685
  • Котэ
    • View Profile
Re: Название скриншота
« Reply #1 on: June 27, 2015, 06:44:41 AM »
А откуда в буфере возьмется имя файла? Но имя файла предсказуемо, и можно написать батник который при запуске скрипта будет очищать скриншоты чтобы они всегда начинались с 000.
Не очень понятно зачем тебе это нужно?

Atas

  • Активный участник
  • ***
  • Posts: 147
    • View Profile
Re: Название скриншота
« Reply #2 on: June 28, 2015, 12:17:52 AM »
Без посторонних программ, насколько я знаю, Clickermann дописывает к имени скриншота его порядковый номер, в этом есть свои плюсы и минусы.
Code: (clickermann) [Select]
GETSCREEN
SCREENSHOT(FROMCLIP())
HALT
Можно отделить этот порядковый номер, например символом подчеркивания, или что либо в это имя добавить, используя текстовую функцию STRCONCAT().
Code: (clickermann) [Select]
GETSCREEN
SCREENSHOT(STRCONCAT(FROMCLIP(), "_"))
HALT

А можно установить программу IrfanView и вызывать её прямо из скрипта процедурой EXECUTE(). IrfanView много чего можно заставить делать таким способом (через парамеры командной строки). Справку по этим парамерам можно найти, если нажать Пуск => Все программы => IrfanView => Command line Options. Там есть примеры и параметры для команды захвата изображения capture.
Code: (clickermann) [Select]
EXECUTE("C:\Program Files\IrfanView\i_view32.exe", STRCONCAT("/capture=0 /convert=screens\", FROMCLIP(), ".bmp"))
HALT
IrfanView создаст файл в нужном формате, указанном в этой команде, в данном примере это *.bmp.

dramster

  • Герой форума
  • *****
  • Posts: 1134
    • View Profile
Re: Название скриншота
« Reply #3 on: June 28, 2015, 08:42:54 AM »
непонятно, почему не хочет сробатывать вызов команды "rename" через execute. или я что не так понимаю?   :-\

Code: (clickermann) [Select]
GETSCREEN
SCREENSHOT(FROMCLIP())
wait(2)
EXECUTE("rename", STRCONCAT("c:\screens\",FROMCLIP(),"0000.bmp ", FROMCLIP(), ".bmp"))
HALT
или
Code: (clickermann) [Select]
EXECUTE("rename", "c:\file.txt newfile.txt")
HALT
« Last Edit: June 28, 2015, 09:22:13 AM by dramster »

Oraven

  • Супермодератор
  • Герой форума
  • *
  • Posts: 3685
  • Котэ
    • View Profile
Re: Название скриншота
« Reply #4 on: June 28, 2015, 11:31:16 AM »
Лучше сделай батник и вызывай его.

Accelerator

  • Зашел в гости
  • *
  • Posts: 4
    • View Profile
Re: Название скриншота
« Reply #5 on: June 29, 2015, 12:27:47 AM »
Ладно видно не получиться только если отдельной программой =) Да в процессе воспроизведения копируется логин из текстового документа, просто удобней было бы выписывать логины по скрину на которых есть тот или иной результат. Ладно спс за ответы я сторонним софтом для скринов воспользуюсь, заодно размер выбрать можно будет) 

dramster

  • Герой форума
  • *****
  • Posts: 1134
    • View Profile
Re: Название скриншота
« Reply #6 on: June 29, 2015, 01:06:40 AM »
как это не получится!? все получится. тебе же написали
Quote
Лучше сделай батник и вызывай его.
и заодно и размер можно выбрать, да и в формате jpg тоже можно.

Code: (clickermann) [Select]
GETSCREEN
SCREENSHOTEX(10,10,100,100,"screen") //вводи свои координаты области, размер. если хочеш в jpg, то SCREENSHOTEX(10,10,100,100,"screen",1), подробнее в справке
STRWRITELN("rename.bat", STRCONCAT("rename %~dp0\screens\screen0000.bmp ", FROMCLIP(), ".bmp"),1)// если скриниш в jpg, то вместо .bmp впиши .jpg
wait(2)
EXECUTE("rename.bat")
HALT
« Last Edit: June 29, 2015, 01:10:36 AM by dramster »