Сохранение скриншота в jpg файл

В новой ubuntu 11.10 Довольно симпатичная и быстро работающая программа по снятию снимков с экрана (скриншотов). Но в ней по прежнему нет толком настроек и сохраняет она в формате png, который довольно много весит. Конечно есть shutter в котором полно самых разных настроек, но в нём есть и минус — медленно делает скрины. А бывают случаи, когда каждая доля секунды на счету.

Обычно в комплекте с дистрибутивом Linux идёт программа «import», которая позволяет делать скрины из консоли. Вот с помощью её и можно настроить сохранение скриншотов сразу в jpg.

Если у вас такой нету, то нужно установить пакет imagemagick (спасибо asa). В debian и подобных дистрибутивах это можно сделать командой:

sudo apt-get install imagemagick

Разумеется, что ни кто не будет запускать терминал и печатать в нём команды для того, что бы быстро сделать скрин.Лучше написать пару скриптов. По традиции сделаем их в папке ~/bin

mkdir ~/bin
gedit ~/bin/screen

И вставляем такой код:

#!/bin/bash
import -window root -quality 85 ~/'Рабочий стол'/`date +%d-%H-%M-%S`.jpg

Где:
import — команда для снятия скриншотов.
-window root — в качестве окна указываем весь экран.
-quality 85 — с качеством 85 (можно указать любое число от 0 до 100)
~/'Рабочий стол'/`date +%d-%H-%M-%S`.jpg — с сохранением в файл на рабочем столе с именем Число-Час-Минута-Секунда.jpg

Если нужно сделать снимок определенно окна, то просто сотрите -window root. Тогда после запуска скрипта появится перекрестие «прицела» и нужно будет им кликнуть на нужное окно.

Можно сделать задержку для снимков. Для этого сместите команду на третью строку, а на второй напишите sleep 3 &&. Это будет означать задержку в 3 секунды.

Желательно ещё добавить какой нибудь звуковой сигнал, когда скриншот сохраняется в файл. Для этого понадобиться установить программу sox

sudo apt-get install sox

Можете вставить свой звук или скачать у меня.

wget http://dl.dropbox.com/u/24844052/tuksik/screen.wav

После чего останется добавить ещё одну строку в скрипт

play путь/к/screen.wav

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

#!/bin/bash
import -quality 85 ~/'Рабочий стол'/`date +%d-%H-%M-%S`.jpg &&
play ~/screen.wav

И не забудьте сделать скрипт исполняемым перед тем, как привязывать его к клавише на клавиатуре:

chmod +x ~/bin/screen

Лично я сделал три разных скрипта, так сказать, на все случаи жизни.

И в конце скрипт(ы) нужно привязать к клавишам. Для этого в «клавиатуре» в «комбинациях клавиш» создаём новые привязки. Следует помнить, что здесь путь к домашней папке нельзя сокращать через ~/, а нужно писать полностью. Например: /home/zegi/bin/screen

Лучше стандартное нажатие PrintScreen не заменять, т.к. если снимок будет по большей части состоять из текста, то png лучше подходит. Будет и качество чётче и размер файла меньше.


На заметку. Если вы приехали в новый город и не можете сосредоточиться на важном, так как все мысли заняты тремя словами: квартира киев сутки, то вы зря волнуетесь. На сайте http://vlasne.ua/ можно без труда найти комнату даже на такой короткий срок, как 24 часа.

Поделись статьёй с друзьями

Или просто поиграйся с кнопочками

5 комментариев на «Сохранение скриншота в jpg файл»

  1. asa:

    $ lsb_release -d -c
    Description: Ubuntu 11.10
    Codename: oneiric
    $ apt-cache show import
    N: Не удалось найти пакет import
    E: Не найдено ни одного пакета
    Что-то нет пакета, где поискать?

  2. asa:

    $ /home/asa/bin/screen
    /home/asa/bin/screen: строка 2: import: команда не найдена
    Пишет , что у меня нету.
    Добавлено: Видимо в xubuntu и lubuntu нету этой команды.
    Добавлено: Вопрос решен, нужно было поставить пакет imagemagick в котором присутствует программа import .

Добавить комментарий