Что нового

Автоматизация Потоковое копирование из буфера обмена в Word

exolon

Новичок
Сообщения
1
Репутация
0
Версия AutoIt: 3.3.16.1

Описание:

Здравствуйте.
По роду деятельности приходится много, очень много, текста и фотографий избирательно извлекать из сканов книг или из браузера, т.к. искомый текст в большинстве своём защищён от копирования, либо отсутствует в других источниках.

При этом приходится воспроизводить много раз одну и ту же последовательность действий:
1. Поиск нужной информации, распознавание её и копирование в буфер обмена
2. Переход в уже открытый WORD
4. Вставка из буфера обмена ранее найденной информации
5. Далее перевод строки один или два раза (для того, чтобы следующая найденная информация была отделена от предыдущей)
( Ввод следующего найденного блока информации из буфера обмена вставляется естественно в конце, там, где стоит курсор. )

Раньше с этим справлялась группа программ: Word, Power Automate, браузер и ABBYY Screenshot Reader. Однако последнее время Power Automate стал очень неустойчиво работать что катастрофически отразилось на скорости работы.

Примечания:

В столе заказов мною найден слегка похожий запрос: https://autoit-script.ru/threads/potokovoe-kopirovanie-cherez-bufer-obmena.2655/

Постановка задачи:

Полагаю, что скрипту нужно выполнить такую последовательность действий:

1. Забрать из буфера обмена текст или фото,
2. перейти в уже открытый текстовый редактор Word Документ1,
3. спуститься вниз,
4. найти последнюю пустую строку,
5. вставить содержимое,
6. после вставки добавить две пустых строки,
7. очистить буфер обмена,
8. ждать появления в буфере новой информации.

В системном трее желательна иконка с выпадающим списком команд для управления скриптом: старт, пауза, стоп, выход.

Заранее всех благодарю за участие в решении этой задачи.
 

chery

Новичок
Сообщения
5
Репутация
0
Для решения данной задачи я предложу использовать AutoHotkey, так как это мощный инструмент для автоматизации и создания горячих клавиш в Windows.

  1. Установите AutoHotkey с официального сайта: https://www.autohotkey.com/
  2. Создайте новый текстовый файл с расширением ".ahk" (например, "clipboard_to_word.ahk").
  3. Откройте созданный файл в текстовом редакторе и напишите следующий скрипт:
Код:
#NoEnv
SendMode Input
SetWorkingDir %A_ScriptDir%

; Создаем иконку в системном трее с выпадающим списком команд
Menu, Tray, Add, Start, StartScript
Menu, Tray, Add, Pause, PauseScript
Menu, Tray, Add, Stop, StopScript
Menu, Tray, Add, Exit, ExitScript
Menu, Tray, Default, Start

return

StartScript:
  ; Запуск скрипта с помощью горячей клавиши (Ctrl + Alt + V)
  Hotkey, ^!v, PasteToWord, On
return

PauseScript:
  ; Приостановка горячей клавиши
  Hotkey, ^!v, Off
return

StopScript:
  ; Остановка горячей клавиши и очистка буфера обмена
  Hotkey, ^!v, Off
  Clipboard := ""
return

ExitScript:
  ; Завершение работы скрипта
  ExitApp

PasteToWord:
  ; Проверяем, содержит ли буфер обмена данные
  if (Clipboard != "") {
    ; Активируем окно Microsoft Word
    IfWinExist, ahk_class OpusApp
    {
      WinActivate
      ; Ожидаем активации окна
      WinWaitActive, ahk_class OpusApp, , 3
      ; Переходим в конец документа, вставляем данные из буфера обмена и добавляем две пустые строки
      SendInput, {End}{Enter}^v{Enter}{Enter}
      ; Очищаем буфер обмена
      Clipboard := ""
    }
  }
return


  1. Запустите скрипт, дважды кликнув на файле ".ahk".
  2. Теперь у вас будет иконка в системном трее с выпадающим списком команд. Вы можете использовать сочетание клавиш Ctrl + Alt + V для выполнения описанной последовательности действий.
Если вы хотите изменить горячую клавишу, замените "^!v" на предпочтительное сочетание клавиш (например, "^!c" для Ctrl + Alt + C).
 
Верх