ScreenGrab -- программа для быстрого создания скриншотов

# ScreenGrab

версия 1.0

## ScreenGrab - быстрое создание скриншотов

Данная программа является кроссплатформенным приложением, предназначенным для быстрого получения снимков экрана (скриншотов) . ScreenGrab создана с использованием фреймворка Qt, за счёт которого достигается работоспособность приложения в операционных системах Microsoft Windows и GNU/Linux.

Основные возможности программы:

- Работа в операционных систмах Windows и Linux
- Получение снимков рабочего стола
- Получение снимков отдельного активного окна
- Получение снимков выделенной области экрана
- Копирование скриншотов в буфер обмена
- Сохранение полученных изображений в файлы форматов PNG, PEG или BMP
- Возможность просмотра и редактирования скриншота во внешнем редакторе
- Ввозможность загрузки скриншотов на несколько хостингов изображений (на данный момент mediacru.sh и imgur.com)
- Возможность установки задержки при получении скриншотов (от 1 до 90 секнд)
- Скрытие главного окна (с последующим восстановлением) ScreenGrab в момент получения скриншота
- Возможность сворачивания приложения в системный трей, и управление через контекстное меню
- Получение скриншотов при помощи глобальных клавиш быстрого доступа
- Автоматическое сохранение скриншотов при их получении
- Возможность вставки текущей даты и времени в имя сохраняемого файла

## Использование В начало

Все очень просто.

При первом запуске программы, вы получаете снимок текущего состояния вшего рабочего стола. Вы можете увидеть это в окне программы. Все дальнейшее управление программой может быть осуществлено через кнопки или контекстное меню в области уведомлений рабочего стола.

Назначение кнопок окна программы.

- Новый снимок [Ctrl+N] -- получение нового скриншота
- Сохранить [Ctrl+S] -- запись полученного снимка на жесткий диск, в виде графического файла.
- Копировать [Ctrl+C] -- Копирование скриншота в буфер обмена.
- Опубликовать - загрузить полученный скриншот на один из поддерживаемых хостингов изображений. На данный момент поддерживаются mediacru.sh, imgur.com и imageshack.us, в дальнейшем список будет расширен
- Открыть в ... - возможность открытия (и редактирования) полученного скриншота в одном из установленных в системе приложений для работы с изображениями.
  Заимечание: В версии для Microsoft Windows поддерживается только Microsoft Paint.
- Настройки [Ctrl+O] -- настрйоки программы
- Справка [Ctrl+H] -- отображение справочной информации и вывод окна с информацией о разработчике и лицензии
- Выход [Ctrl+Q] -- выход из программы (при закрытии через "крестик" в верхнем правом углу, программа всего лишь свернётся в убласть уведомлений)

Все это также продублировано в контекстном меню приложения.

Дополнительные элементы управления приложением, расположенный в главном окне.

- Задержка -- величина задержки (в секундах) перед получением нового снимка экрана.
- Тип -- выбор типа скриншота (полный экран, снимок отдельного активного окна или выделенная область экрана).

Основные параметры:

Основные параметры разделены на две вкладки:

- Каталог по умолчанию -- директория для сохранения файлов, открываемая в окне сохранения файлов.
- Имя файла по умолчанию -- исходное имя файла при сохранении..
- Формат -- формат изображения, который будет автоматически выбираться при сохранении. Возможность выбра другого формата при сохранении
- Без декораций окна -- получение скриншота активного окна без рамки и строки заголовка (только для Linux-версии).
- Копировать имя сохранённого файла в буфер обмена - передача в буфер обмена имени сохраняемого файла. Можно выбрать следующие варианты:

- Не копировать - имя сохранённого файла не будет передано в буфер обмена.
- Только имя файла - передать в буфер обмена только имя файла.
- Весь путь к файлу - передать в буфер обмена полный путь к файлу.

Основные параметры:

Расширенные параметры:

- Дата и время в имени файла -- возможность автоматическойй вставки текущей даты и времени в имя сохраняемого файла
  Эти выражения могут быть использованы для форматирования вывода даты:

  Выражение | Вывод
  --- | ---
  d | the day as number without a leading zero (1 to 31)
  dd | день в виде цифр, с нулем в начале, если требуется (01-31)
  ddd | название для в сокращенном виде (напр. 'Пн' или 'Вс').
  dddd | полное название дня (напр. 'Понедельник').
  M | месяц в виде цифр, без нуля в начале (1-12)
  MM | месяц в виде цифр, с нулем в начале, если требуется (01-12)
  MMM | название месяца в сокращенном виде (напр. 'Янв').
  MMMM | полное название месяца (e.g. 'Январь').
  yy | год в виде двух цифр (00-99)
  yyyy | год в виде четырех цифр (0000-9999)

  Эти выражения могут быть использованы для форматирования вывода времени:

  Выражение | Вывод
  --- | ---
  h | the hour without a leading zero (0 to 23 or 1 to 12 if AM/PM display)
  hh | the hour with a leading zero (00 to 23 or 01 to 12 if AM/PM display)
  H | the hour without a leading zero (0 to 23, even with AM/PM display)
  HH | the hour with a leading zero (00 to 23, even with AM/PM display)
  m | the minute without a leading zero (0 to 59)
  mm | the minute with a leading zero (00 to 59)
  s | the second without a leading zero (0 to 59)
  ss | the second with a leading zero (00 to 59)
  z | the milliseconds without leading zeroes (0 to 999)
  zzz | the milliseconds with leading zeroes (000 to 999)
  AP or A | interpret as an AM/PM time. AP must be either "AM" or "PM".
  ap or a | Interpret as an AM/PM time. ap must be either "am" or "pm".

- Автосохранение скриншотов -- автоматическое сохранение скриншотов при их получении (можно совмещать с предыдущей настройкой)
- Сохранять первый скриншот -- возможность автоматического сохранения скриншота, получаемого при запуске приложения
- Несколько копий программы -- возможность запуска нескольких экземпляров ScreenGrab одновременно.
- Enable external viewer -- включить или выключить просмотр скриншота во внешней программе просмотра графических файлов (двойным кликом по скриншоту в клавном окне).

Параметры отображения приложения:

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

Параметры использования области уведомлений (трей):

- Использовать трей -- возможность использования области уведомлений операционной системы (десктопного окружения) для отображения сообщений и управления приложением.
- Всплывающие уведомления -- режим отображения всплывющих уведомлений. Имеет три вида - отображать всегда, отображать только при свёрнутом главном окне и не отображаить никогда.
- Время отображения уведомлений -- время (в секундах), в течении которого будут отображяться всплывающие уведомления
- Сворачивать в область уедомлений -- сворачивание прпограммы в область уведомлений (трей) при назатии на кнопку закрытия (ту что в правом верхнем углу окна).

Комбинации клавиш:

На вкладке "Комбинации клавиш" в окне настроек вы можете установить сочетания клавиш для быстрого доступа к основным функциям приложения. Существует два вида комбинаций клавиш, используемых в screenGrab -- локальные и глобальные.

Локальные дублируют действия выполняемые при нажатии на кнопки в главном окне приложения. Они работают только когда окно ScreenGrab является активным.

Глобальные комбинации клавиш позволяют воспользоваться функцией получения нового скриншота при работе с другим приложением в вашей операционной системе.

Параметры командной строки:

- --fullscreen -- скриншот всего экрана [по умолчанию].
- --active -- скриншот активного окна.
- --region -- скриншот выделенной области экрана.
- --minimized -- запуск с автоматическим сворачиванием в трей (или на панель задач, если тподдержка трея выключена).
- --upload -- автоматическая загрузка скриншота на выбраный в настрйоках хостинг изображений. И отображение прямой ссылки на изображение после завершения загрузки.
- --version -- вывод информации о версии ScreenGrab {только linux].
- --help -- вывод информации о параметрах командной строки {только linux].

## Лицензия В начало

Авторские права:

Артём 'DOOMer' Галичкин doomer3d@gmail.com

Лицензия:

Программа ScreenGrab распространяется бесплатно по условиям GNU General Public License version 2

Благодарности:

Локализации:

- MÃ¡rcio Moraes -- Бразильская Португальская локализация
- Геннадий Моцьо -- Украинская локализация

Бета-тестеры

- Alexantia
- iNight

А также всем тем, кто использует ScreenGrab :)

## История версий В начало

версия 1.2:

- Добавлена возможность запоминания типа последнего сделанного скриншота.
- Несколько небольших исправлений.

Версия 1.1.1:

- Исправлена неправильная строка bb-ода с превью скриншота, загружаемого на 'imgur'.
- справлено аварийное завершение приложения при наличии в конфигурационном файле параметра "showTrayIcon=false".

Версия 1.1:

- Добавлена возможность автоматической загрузки скриншота на MediaCreush (http://mediacru.sh).
- Опция "Всегда сохранять размер окна" заменена на "Автодобавление размера окна при выходе из ScreenGrab".
- Перервботан интерфейс главного окна (изменен некоторые кнопки).
- Переработан диалог настроек (уменьшено число секций и некоторые настройки были перемещены между секциями).

Версия 1.0:

- Исправлены баги с поддержкой двух мониторов в Linux.
- Добавлена поддержка XDG_CONFIG_HOME (конфигурационные файлы теперь хранятся в ~/.config/screengrab/), отключается опцией сборки SG_XDG_CONFIG_SUPPORT
- Добавлена возможность загрузки скриншотов на несколько хостингов (на данный момент imgur.com and imgshack.us, в дальнейшем список будет расширен)
- Добавлена возможность сборки без модуля загрузки скриншотов в интернет (опция сборки SG_EXT_UPLOADS)
- Добавлен режим "Ранее выбранная область"
- Добавлена возможность редактирования скриншота во внешнем редакторе
- Добавлена опция просмотра скриншота во внешней программе просмотра графических файлов (двойным кликом по скриншоту)
- Исправлена ошибка сворачивания главного окна при использовани шортката "Exit", если включена опция "Сворачивать в область уведомлений"
- Исправлен баг с невлезанием некоторых локализаованных надписей на кнопки в главном окне.
- Исправлена регрессия с неполучениемм скриншота при запуске второго экземпляра приложения.
- Исправлена ошибка несоздавания несуществоввашего ранее каталога для автосохранения скриншотов (при ручном вводе имени каталога в диалоге натроек)
- Добавлена опция сборки SG_GLOBALSHORTCUTS для возможности сборки без поддержки глобальных горячих клавиш
- Автодобавление номеров скриншотов при сохранении, если файл с выбранным именем уже существет в данном каталоге.
- Возможность изменить комбинацию клавиш для действия "выход"
- Возможность запуска с автоматическим сворачиванием в трей (или на панель задач, если тподдержка трея выключена) при помощи параметра командной строки "--minimized"
- Добавлена возможность автоматической загрузки скриншота на выбранный в настройках хотсинг изображений (парметр командной строки "--upload")

Версия 0.9.1:

- Исправлено не-переключение типа скриншота (в GUI) при снятии скриншота по сигналу от другого экземпляра приложения (запущенного при выключенной опции "Несколько копий приложения").
- Исправлено некорректное получение скриншота активного окна в среде GNOME (при выключенной опции "Несколько копий приложения" и запуске второго экземпляра ScreenGrab)..

Версия 0.9:

- Добавлены глобальные клавиши быстрого доступа.
- Добавлена возможность отключения трея.
- Дабвлено активирование узе запущенной копии ScreenGrab при попытке запуска второго экземаляра приложения (при отключенной опции "Несколько копий программы").
- Добавлено автосохранение первого скриншота, получаемого при старте приложения (в виде опции)).
- Изменен дизайн диалога настроек.

Версия 0.8.1:

- [Linux] Исправлен некорректный выболр формата сохраняемого файла в KDE 4.4. и выше
- Добавлена немецкая локализация

Версия 0.8:

- Добавлены параметры командной строки для установки режима получения скриншотов (весь экран, активное окно, область экрана).
- Добавлена поддержка формата BMP.
- Добавлена Бразильская Португальская локализация.
- Окно программы теперь автоматически скрывается в процессе получения скриншота.
- {linux] Исправлено не совсем корректно получение скриншотов активного окна.
- [linux] Добавлен параметр "без декораций окна".
- Добавлены "горячие клавиши" для кнопок главного окна.

Версия 0.6.2 [Linux only]:

- Исправлена некорректная загрузка локализации для меню области уведомлений.

Version 0.6.1 [Linux only]:

- Исправлено некорректное определение системной локали в некоторых Linux-дистрибутивах..

Версия 0.6:

- Параметр "скрывать главное окно" по умолчанию теперь включен.
- Добавлена возможность редактировать шаблон даты И времени, вставляемых в имя сохраняемого файла.
- Добавлено мастабирование экранной области вокруг курсора в режиме "область экрана".
- Немного улучшен внешний вид диалога настроек..
- Добавлена справочная информация в html-формате (на английском и русском языках).

Версия 0.5:

- Добавлена возможность автосохранения скриншотов.
- Добавлена возможность вставки текущей даты и времени в имя сохраняемог файла.
- Добавлена возможность изменения времени отображения всплывающих уведомлений (1 - 10 секунд).
- Добавлена возможность просмотра справочной информации по использованию программы.
- Добавлены всплывающие подсказки (tool tips) ко всем элементам пользовательского интерфейса .
- Несколько мелких исправлений в коде и конфигурационном файле.

Версия 0.4:

- Добавлена вохзможность захвата выделенной области экрана.
- Добавлена возможность копирования скриншотов в буфер обмена.
- Возможность сохранения текущих размеров окна приложения при выходе (по умолчанию выключено).
- Уменьшен объём оперативной памяти, занимаемой при запуске.
- [Win32] Исправлен баг с размещением конфигурационного файла.
- Немного оптимизирован код работы с конфигурационными параметрами.
- Оптимизирован процесс работы с главным окном при помощи клавиатуры.
- Новая иконка приложения.
- Несколько мелких исправлений.

Версия 0.3.1:

- Устранён баг с неотображением иконки приложения в заголовке главного окна

Версия 0.3:

- Полностью переработан интерфейс главного кона, программмный код которого отделен от основного класса приложения.
- Несколько других изменений в интерфейсе пользователя.
- Добавлена возможность получения скриншота отдельного активного окна.
- Добавлена опция включения возможность запуска нескольких копий ScreenGrab.
- Добавлена возможность выбора между сворачиванием в область уведомлений и закрытие программы (при нажатии кнопки закрытия окна).

Версия 0.2:

- Сохранение в формат JPEG.
- Добавлен диалог настроек.
- Добавлены параметры для каталога сохраняемых файлов, дефолтного имени файла и предпочитаемого формата.
- Сохранение настроек в INI-файл
- Добавлена поддержка интернационализации и ru-lang-package.
- Немного изменений и фиксов в стурктуре кода.
- Инстялятор для Windows-версии + пакеты для Ubuntu 9.04.

x Версия 0.1:

- Первая публичная версия.
- Добавлена иконка в убластиуведомлений и контекстное меню.
- Возможность скрытия окна программы в область уведомлений.
- Запуск только одного экземпляра приложения

Версия 0.0.3:

- Первая работоспособная версия с минимальной функциональностью.