Заносится в буфер обмена после чего. Использование буфера обмена для работы с объектами. Программы для работы с буфером

Некоторые приложения могут использовать свой собственный буфер обмена, доступный только в них.

Приложение может записывать в буфер обмена одну и ту же информацию одновременно в нескольких различных форматах. Наиболее информативный формат помещается первым, за ним остальные по убыванию информативности. При вставке информации из буфера обмена обычно используется первый распознанный приложением формат, который будет наиболее информативен для данного приложения. Например, если текстовый процессор копирует в буфер обмена текст: в формате RTF , в виде рисунка WMF и в виде текста без форматирования, этот текст может быть вставлен в другой текстовый процессор с сохранением разметки, в графический редактор - рисунком и в простой текстовый редактор - неформатированым текстом. Операционная система может производить некоторые преобразования форматов информации, если запрошенный формат отсутствует в буфере обмена, но может быть получен из имеющегося, например, изменять кодировку текста.

Вставить объект из буфера обмена можно сколько угодно раз. При копировании информации в буфер его предыдущее содержимое пропадает.

Горячие клавиши для пользования буфером обмена

  • Скопировать выделенные объекты в буфер обмена: Ctrl + C или Ctrl + Ins .
  • Вырезать выделенные объекты в буфер обмена (для перемещения): Ctrl + X или ⇧ Shift + Del .
  • Вставить из буфера обмена: Ctrl + V или ⇧ Shift + Ins .

Хотя эти комбинации и являются наиболее распространёнными, некоторые приложения могут использовать какие-либо другие комбинации клавиш. Например в X Window System , кроме вышеописанного буфера обмена, доступен буфер «выделения», для копирования в который достаточно лишь выделить нужную часть текста, а для вставки достаточно нажать среднюю кнопку мыши или же одновременно левую и правую кнопки (имитация средней кнопки).

Диспетчеры буфера обмена

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

Например, к базовым операциям они добавляют возможности:

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

Примечания

Ссылки

  • Teropiuty, Федор Где находится буфер обмена и что это такое. . Обучающий сайт "Компьютер - это просто!" (февраль 2011). - Компьютер для чайников. Архивировано из первоисточника 15 мая 2012.

Wikimedia Foundation . 2010 .

  • Баланс
  • Терновый венец (морская звезда)

Смотреть что такое "Буфер обмена" в других словарях:

    буфер обмена - Буфер памяти, предназначенный для временного хранения копируемой части данных при редактировании текста, монтаже изображения и т.д. Тематики электросвязь, основные понятия EN clipboard …

    буфер обмена между прикладными программами - экранная лицевая панель 1. Область памяти, используемая для временного хранения данных. 2. Утилита в системах Microsoft Windows и Macintosh Finder, которая применяется для временного хранения графической или текстовой информации.… … Справочник технического переводчика

    Буфер обмена (обмана) - Жарг. шк. Шутл. ирон. Буфетчица. (Запись 2003 г.) …

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

    БУФЕР - обмена (обмана). Жарг. шк. Шутл. ирон. Буфетчица. (Запись 2003 г.) … Большой словарь русских поговорок

    Буфер (информатика) - В этой статье не хватает ссылок на источники информации. Информация должна быть проверяема, иначе она может быть поставлена под сомнение и удалена. Вы можете … Википедия

    Буфер (вычислительная техника) - В информатике буфер (англ. buffer) это область памяти, используемая для временного хранения данных при вводе или выводе. Обмен данными (ввод и вывод) может происходить как с внешними устройствами, так и с процессами в пределах компьютера. Буферы… … Википедия

    буфер (на экране для монтажа) изображения в системах для обработки текстов - Область в памяти или на внешнем устройстве, используемая для временного хранения данных и обмена ими как внутри программы, так и между программами. [Е.С.Алексеев, А.А.Мячев. Англо русский толковый словарь по системотехнике ЭВМ. Москва 1993]… … Справочник технического переводчика

    область обмена данными - буфер обмена данными — [Л.Г.Суменко. Англо русский словарь по информационным технологиям. М.: ГП ЦНИИС, 2003.] Тематики информационные технологии в целом Синонимы буфер обмена данными EN clipboard … Справочник технического переводчика

    Вырезать, скопировать, вставить - (англ. cut, copy, paste) набор функций для работы приложений с буфером обмена операционной системы. Копировать и переносить в другое место можно как фрагменты текста (изображения, звука и т. д.), так и файлы целиком. С точки… … Википедия

Книги

  • WinRT. программирование на C# для профессионалов , Рихтер Джеффри, ван де Боспурт Мартен. Ознакомьтесь с Windows Runtime и изучите передовые методики разработки приложений из Магазина Windows. Авторы книги Джеффри Рихтер и Мартен ван де Боспурт, имеющие немалый опыт…

Буфер обмена представляет собой область оперативной памяти, которая используется операционной системой для временного хранения данных. Он выступает в роли общего хранилища данных для всех приложений системы, фактически любая программа может записывать данные в буфер обмена и считывать их оттуда. Он способен хранить данные различных типов и, кроме данных, содержит сведения о типе хранимой информации. Буфер обмена является неотъемлемым компонентом операционной системы типа Windows.

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

Для выполнения операции обмена данными через буфер в Delphi предназначен специальный класс TClipboard . В Delphi также имеется глобальный объект Clipboard , который является экземпляром класса TClipboard и представляет буфер обмена Windows.

При помощи свойств и методов объекта Clipboard возможно осуществление различных операций обмена или анализа хранимых данных. Для доступа к объекту буфера в разделе uses модуля, в котором выполняются операции с объектом буфера обмена, указывается модуль Clipbrd .

Общее количество форматов, поддерживаемых буфером обмена, содержится в свойстве FormatCount типа Integer . Для отображения количества форматов, которые распознает буфер, можно использовать следующий листинг:

//В разделе uses указываем модуль Clipbrd Label1.Caption:= IntToStr(Clipboard.FormatCount);

Буфер обмена поддерживает самые разнообразные типы данных. Приведем список поименованных констант некоторых форматов.

  • CF_TEXT - обычный текст (коды ANSI). Символ окончания строки - #10 и #13, окончание текста - #0.
  • CF_BITMAP - рисунок ВМР-формата.
  • CF_MetaFilePic - рисунок WMF-формата.
  • CF_TIFF - рисунок TIFF-формата.
  • CF_OEMTEXT - текст.
  • CF_DIB - рисунок DIB-формата.
  • CF_Wave - звук.
  • CF_UniCodeText - текст (коды Unicode).
  • CF_Picture - объект типа TPicture.
  • CF_COMPONENT - объект типа Persistent.

При необходимости можно создать и зарегистрировать свои форматы данных в дополнение к имеющимся базовым.

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

В листинге 1 приводится обработчик нажатия кнопки, загружающий в список ListBox1 о значения констант, идентифицирующих каждый формат данных буфера обмена.

Листинг 1. Отображение форматов буфера обмена

Var i: Integer; begin for i:= 0 to Clipboard.FormatCount - 1 do ListBox1.Items.Append(IntToStr(Clipboard.Formats[i])); end;

Приложение может помещать информацию в буфер обмена и извлекать ее только в тех форматах, которые будет поддерживать буфер. Список поддерживаемых форматов создается при инициализации приложения.

Перед доступом к данным, содержащимся объектом Clipboard , может потребоваться анализ формата данных, для этого служит метод НаsFomat . Процедура HasFormat(Format: Word) : Boolean используется для запроса к буферу обмена и позволяет узнать, можно ли извлечь хранимые в нем данные в заданном формате, указанном параметром Format . При положительном ответе возвращаемое значение равно True , в противном случае - False .

Clipboard имеет специальное свойство AsText типа String AsText

Листинг 2. Пример на использование HasFormat, AsText.

Procedure TForm1.Button1Click(Sender: TObject); begin if Clipboard.HasFormat(CF_TEXT) then Edit1.Text:= Clipboard.AsText else MessageDlg("There is no text on the Clipboard", mtInformation, ,0); end;

Также копировать текст в буфер обмена можно при помощи метода SetTextBuf. Единственое, что необходимо здесь учесть, это то, что обязательно параметр передаваемый в SetTextBuf привести к типу PChar.

Clipboard.SetTextBuf(PChar(Edit1.Text));

Как правило, различные приложения используют буфер обмена. Но в случае, когда необходимо получить монопольный доступ к буферу, приложение должно открыть его для себя в специальном режиме. Для этого вызывается метод Open , позволяющий программе получить полный (исключительный) доступ к общей области обмена. После вызова метода Open содержимое буфера не может быть изменено другими приложениями, поэтому после окончания монопольного использования приложение должно вызвать метод Close объекта Clipboard . Если открытый буфер не был закрыт с помощью метода Close , то он будет автоматически закрыт системой после завершения программы, открывшей буфер обмена.

Листинг 3. Пример на использование Open, Close, GetAsHandle.

Uses clipbrd; procedure TForm1.Button1Click(Sender: TObject); var MyHandle: THandle; TextPtr: PChar; begin ClipBoard.Open; try {$IFNDEF UNICODE} MyHandle:= Clipboard.GetAsHandle(CF_TEXT); {$ELSE} MyHandle:= Clipboard.GetAsHandle(CF_UNICODETEXT); {$ENDIF} TextPtr:= GlobalLock(MyHandle); ListBox1.Items.Add(StrPas(TextPtr)); GlobalUnlock(MyHandle); finally Clipboard.Close; end; end;

Для очистки содержимого буфера обмена используется метод Clear . Он вызывается автоматически при изменении содержимого в буфере. Перед записью новых данных, помещаемых в буфер, старая информация удаляется.

Класс TClipboard используется многими другими классами и компонентами, которые поддерживают обмен данными через буфер обмена. К примеру, компоненты Memo и Edit имеют специальные методы для обмена текстовой информацией посредством буфера. Методы CopyToClipBoard и CutToClipBoard помещают текстовые данные в буфер обмена, копируя и вырезая их из источника (компонента) соответственно, а метод PasteFromClipBoard вставляет текстовый фрагмент из буфера в текстовое поле.

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

Листинг 4. Копирование текста из поля редактора Memo1 в буфер обмена

Procedure TForm1.Button1Click(Sender: TObject); begin //Выделяем весь текст в поле редактора Memo1.SelectAll; //Копируем текст Memo1.CopyToClipboard; end;

Буфер обмена часто используется для хранения текста, поэтому объект Clipboard имеет специальное свойство AsText типа String , предназначенное для обработки содержимого буфера как данных текстового формата. Свойство AsText предназначено как для чтения, так и для записи. При чтении свойства данные извлекаются из буфера, а при записи - заносятся в буфер обмена (листинг 2).

При работе с графическими компонентами для операций, связанных с обменом информацией через общую область, удобно использовать метод Assign . Процедура Assign (Source: TPersistent) присваивает буферу обмена объект, указанный параметром Source . Если объект является изображением и принадлежит таким графическим классам, как TBitmap ,TPicture или TMetafile , то в буфер обмена копируется изображение установленного формата. Для извлечения изображения также может использоваться метод Assign .

Пример использования буфера обмена для копирования изображений приводится в листинге 5.

Листинг 5. Обмен изображением через буфер обмена.

Procedure TForm1.Button1Click(Sender: TObject); begin //Открываем монопольный доступ Clipboard.Open; //Заносим изображение в буфер Clipboard.Assign(Image1.Picture); //Проверяем формат находящихся в буфере данных if Clipboard.HasFormat(CF_PICTURE) then Image2.Picture.Assign(Clipboard); //Закрываем монопольный доступ к буферу Clipboard.Close; end;

Используемая литература: Программирование в Delphi. Трюки и эффекты. Александр Чиртик

В операционных системах Windows, Mac OS или Андроид пользователям компьютера и Интернета была предоставлена возможность работать одновременно в нескольких окнах с несколькими программами.

У пользователей сразу же возник соблазн передачи данных из одних программ (из одних окон) в другие программы (в другие окна).

Действительно, имеешь, например, подходящий текст в формате Блокнота (скажем, с расширением.txt), и это текст вполне пригоден, чтобы его вставить в подготавливаемую презентацию (скажем, в формате PowerPoint). Не перепечатывать же его заново?! Текст уже есть, но в другом формате и в другом окне, в другой программе. Так и хочется его каким-то образом автоматически перенести в другое окно, в другую программу.

Или, например, пользователь ПК сделал фотографию и сохранил ее в формате (например, с расширением.jpeg). И теперь надо эту фотку вставить в виде рисунка, например, в текст Word, чтобы «украсить» текст, сделать «книжку с картинками». Подобных примеров, когда есть желание перенести данные из одной программы (из одного окна) в другую программу (в другое окно) можно привести множество. А если есть желания, то должны быть и соответствующие возможности.

Как сделать так, чтобы можно было из одной программы в другую переносить совершенно любые данные: тексты, картинки, графику, чертежи, схемы и даже видео или аудио и пр.?

Что такое Буфер обмена

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

Достаточно в одной программе выделить данные, подлежащие переносу в другую программу, и скопировать их в некую специальную область. Затем в другой программе, куда должны быть перенесены данные, нужно установить курсор в то место, куда данные должны быть помещены, и после этого выполнить процедуру вставки данных из этой специальной области, которые ранее были туда скопированы.

Кстати, процедура копи-паст работает также в пределах одного окна, одной программы, если данные нужно копировать из одного места и вставить в другое место текста, презентации и т.п.

Благодаря внешней простоте подобной процедуры переноса данных из одного окна в другое, эта процедура получила жаргонное наименование «копи-паст». Слово «копипаст» произошло от двух английских слов «copy-paste», что в переводе означает «копировать-вставить».

Специальная область, в которую данные сначала копируются, а потом оттуда восстанавливаются (вставляются), получила название «буфер обмена» (по-английски «clipboard», переводится так же – «буфер обмена»).

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

Операции «Копировать» или «Вырезать», а потом «Вставить» и связанный с этими операциями буфер обмена являются стандартными функциями операционных систем Windows, Mac OS или Андроид.

Схема работы буфера обмена в Windows, Mac, Android

Как правило, в буфер обмена информация попадает, когда пользователь использует одну из двух операций:

  1. «Копировать» ( Ctrl+C) или
  2. «Вырезать» (Ctrl+X).

А из буфера обмена пользователь извлекает информацию с помощью операции «Вставить» (Ctrl+V).

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

Стандартный буфер обмена как часть оперативной памяти способен сам себя очищать, например, при выключении компьютера или при помещении туда новой информации.

Если в Windows его делать с помощью кнопки PrtScr (сокращение от Print Screen), то он также попадает в буфер обмена. И извлечь скриншот из буфера обмена можно с помощью операции “Вставить”.

Операции буфера обмена «Копировать» и «Вставить»

Многие программы имеют в своем арсенале возможностей пункты меню и кнопки «Копировать» («Copy»), а также пункты меню и кнопки «Вставить» («Paste»).

Как правило, из-за частого применения этих пунктов, данные пункты меню находятся чаще всего в самом главном меню программ, а кнопки «Копировать» («Copy») и «Вставить» («Paste») могут иметь довольно большой размер и могут быть хорошо заметными (рис. 1).

Рис. 1. Кнопки «Вставить» и «Копировать» в программе Microsoft Word

1 на рис. 1 – кнопка «Копировать» в программе Word, которая будет активна только в том случае, когда выделен текст (или картинка), и, следовательно, есть объект для копирования и помещения его в буфер обмена,
2 на рис. 1 – кнопка «Вставить».

Многие контекстные меню, которые появляются при щелчке правой кнопкой мыши (ПКМ) по выделенному фрагменту документа (текст, рисунок и т.п.) имеют опции «Копировать» и «Вставить», поскольку это часто применяемые действия пользователей ПК при работе с программами (рис. 2).

Рис. 2. Пункты контекстного меню «Копировать» и «Параметры вставки» в программе Microsoft Word

Заменой кнопок «Копировать» и «Вставить» (1 и 2 на рис. 1) являются пункты контекстного меню точно с такими же названиями (1 и 2 на рис. 2).

Все ли так просто?

Чаще всего пользователь применяет копирование и вставку для переноса данных из одного места программы в другое место или из одной программы в другую, даже не задумываясь, как это делается. И почти в 100% случаев получается адекватный результат: данные из одной программы переносятся без искажений в другую программу или из одного места они переходят в другое в пределах одной программы.

Но могут быть и исключения. И тогда применение буфера обмена может привести к искажению данных, если неправильно пользоваться предоставленными возможностями. Это случается редко, но все-таки может случиться. Разберем примеры «искажения» данных, а точнее, примеры неправильной работы с буфером обмена.

Буфер обмена или буфер обмана на примере Excel

Пользователи электронных таблиц Excel знают, что в ячейках программы Excel могут храниться не только цифры, но и формулы для их вычисления. А в самих ячейках высвечиваются данные, полученные в результате вычислений по этим формулам. Теперь представьте себе, что мы ставим курсор в такую ячейку с формулой, жмем «Копировать» и данные помещаем в буфер обмена.

Затем ставим курсор в другую свободную ячейку и жмем «Вставить». Что должно попасть в эту свободную ячейку? Формула, которая стояла в прежней ячейке, из которой мы копировали данные в буфер обмена? Или число, которое стояло в прежней ячейке? Если формула, то результат вставки будет один (вставленная формула сработает, и в ячейке появится число, являющееся результатом вычисления по этой формуле). Если же вставится число, то результат вставки – это число, полностью равное тому, которое стояло в ячейке, из которой производилось копирование.

Понятно, что в итоге в новой ячейке мы можем увидеть либо одно число (если вставилась формула), либо другое (если вставилось число). Значит, мы можем получить как «правильный», так и «неправильный» результат. То есть мы или получим точный ответ из буфера обмена, или получим неточный ответ уже из «буфера обмана»!

Как не ошибиться? Надо знать, ЧТО по умолчанию вставляется из буфера обмена в той или иной программе. Именно знать. Для этого надо про это где-то прочитать (в справке к программе, например), или поэкспериментировать самостоятельно. Если не знать, то можно получить неверные данные, опираясь на возможности уже не буфера обмена, а «буфера обмана»!

В приведенном примере с программой Excel опытные пользователи этой программы знают, что по умолчанию в ячейку вставляется формула, а не значение. Если же нужно из буфера обмена вставить все-таки значение, а не формулу, то надо пользоваться дополнительным меню вставки, и выбирать из него «Вставить значение» (цифра 1 на рис. 3) или воспользоваться «Специальной вставкой» (цифра 2 на рис. 3 и рис. 4):

Рис. 3. Вставка значения в новую ячейку (вместо формулы) (цифра 1) или использование «Специальной вставки» (цифра 2)

Если кликнуть по опции “Специальная вставка” (2 на рис. 3), то в открывшемся окне с таким же названием получим много вариантов вставки:

Рис. 4. Окно «Специальная вставка» программы Excel для выбора вариантов вставки скопированных данных из буфера обмена в новую ячейку.

Как видим на рис. 4 в новую ячейку можно вставить не только значения или формулы, но и форматы данных, формулы и значения вместе с форматами и пр., а также примечания к ячейкам, условия на значения, и в том числе добавить дополнительные операции для обработки данных.

Вот так можно с одной стороны окончательно запутаться с вроде бы простым буфером обмена, с которым обычные пользователи чаще всего делают две операции «Копировать» и «Вставить». С другой стороны, можно получить множество дополнительных возможностей, если эти возможности предусмотрены в программе, пользующейся буфером обмена.

О буфере обмена Microsoft Office, в том числе, 2010, 2013, 2016

Развернутые, расширенные функции по управлению буфером обмена предлагаются в пакете Microsoft (сокращенно MS) Office. Это позволяет делать программа «Буфер обмена», встроенная в пакет MS Office. (В этот пакет входит набор программ: текстовый редактор Word, электронные таблицы Excel, презентации PowerPoint, базы данных Access и другие).

С помощью буфера обмена в MS Office можно осуществлять копирование и вставку не один раз и не раз за разом, а многократно.

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

Обращение к возможностям буфера обмена, которое осуществляется из любой программы пакета MS Office, показано ниже на рис. 5 на примере Excel.

Из одного буфера обмена можно вставлять данные в разные программы офиса: Word, Excel, PowerPoint и др. Проще говоря, можно картинку скопировать один раз, после чего она будет помещена в программу «Буфер обмена» MS Office. Затем эту картинку можно поместить из буфера обмена и в редактор Word, и в таблицу Excel, и в презентацию PowerPoint.

Рис. 5. Буфер обмена в Excel

Подробнее про буфер обмена для офиса 2010, в частности, про его включение и отключение, про настройку его видимости, информация с официального сайта на русском языке:

Официальный сайт Microsoft на русском языке о буфере обмена для Office 2013 и 2016:

Программа «Буфер обмена» в MS Office иначе еще называют менеджером буфера обмена. Есть и другие специальные программы для операционных систем, называемые менеджерами буфера обмена, которые предназначены для расширения возможностей стандартного буфера обмена.

Возвращаясь к стандартным возможностям обычного буфера обмена, который есть в Windows, Mac OS или Андроид, отметим, что в нем сохраняются последние данные, которые туда были скопированы.

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

Таким образом, при необходимости многократного использования стандартного буфера обмена нужно после каждой операции «Копировать» сразу же использовать операцию «Вставить». Многократно подряд скопировать, и потом многократно подряд вставить (даже если это кажется более удобным вариантом работы), пользуясь стандартными возможностями буфера обмена, нельзя.

Буфер обмена в Word

Специальные вставки есть не только в довольно сложной и многофункциональной программе Excel, но и в том же Ворде (рис. 6), а также во многих других программах. И об этом надо помнить, если активно пользоваться буфером обмена, чтобы он не превратился в итоге в «буфер обмана».

Рис. 6.1. Меню “Вставить” в Word

Если в Ворде открыть меню “Вставить” (1 на рис. 6.1), а затем кликнуть по опции “Специальная вставка” (2 на рис. 6.1), то можно увидеть предлагаемые возможности вставки из буфера обмена:

Рис. 6.2. Специальная вставка из буфера обмена в программе Microsoft Word

Вставить данные можно напрямую, без буфера обмена

И еще хотелось бы отметить следующее. Вставлять данные в программы можно не только из буфера обмена. Картинки можно вставлять из файлов, тексты можно тоже вставлять из файлов, в таблицы можно вставлять графики и диаграммы и многое-многое другое. Здесь уже буфер обмена не при чем! И меню «Вставка» в том же Ворде (рис. 7) тоже не имеет не малейшего отношения к вставке данных из буфера обмена, хоть это меню записывается одинаково с наименованием кнопки «Вставить», предназначенной для вставки из буфера обмена.

Рис. 7. Меню «Вставка» программы Microsoft Word, НЕ имеющее отношения к вставке из буфера обмена

На рис. 7 видно, что в Word в меню «Вставка», которое НЕ связано с буфером обмена, входят:

  • страницы,
  • таблицы,
  • рисунок,
  • клип,
  • диаграммы,
  • колонтитулы,
  • надписи,
  • символы
  • и т.д.

Таким образом, пользуясь буфером обмена, пользователь ПК может вставлять данные, ранее скопированные туда из другого места той же программы или из другой программы. И это никак не связано с другими возможностями вставки других данных, которых, как видим, тоже немало.

Что значит «Буфер обмена содержит большой фрагмент»?

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

Если эти данные в буфере обмена занимают много места (например, скопирован большой текст, объемная картинка и др.), то при выходе из программы может быть выдано предупреждение о том, что в буфере обмена остался большой объем информации (рис. 8).

Рис. 8. Предупреждение, что в буфере обмена остался большой объем информации.

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

1 на рис. 8 – если нажать «Да», тогда данные останутся в буфере обмена, программа Word будет закрыта.
2 на рис. 8 – клик по «Нет», данные будут удалены из буфера обмена, Word будет закрыт.
3 на рис. 8 – если щелкнуть «Отмена», тогда ничего не изменится, ибо пользователь передумал очищать буфер обмена и закрывать Word.

Решение, какую из трех кнопок выбрать, остается за пользователем.

Если данные из буфера обмена удалить, то их уже нельзя будет вставить в другие программы. А если оставить, то вставить их будет возможно, но при этом на хранение большого объема данных в буфере обмена потребуется много ресурсов ПК. Тут уж пользователь должен определиться, что он хочет: сохранить данные в буфере обмена или сохранить ресурсы оперативной памяти на своем устройстве для дальнейшей работы.

Не забывайте! Копировать тексты, картинки и прочую информацию из Интернета без указания ссылки на источник можно только для личного использования. Если же скопированная информация повторно выкладывается в Интернет БЕЗ указания ссылки на источник информации, то это является нарушением авторских прав и может повлечь неприятные последствия.

Начиная с самых первых версий, в Windows реализовывалась идея одновременной работы с несколькими приложениями. Одновременно с этой возможностью появилась необходимость использовать данные из одного документа в другом, часто созданном совершенно другим приложением. Этой цели стал служить буфер обмена Windows (англ. Clipboard ).

Занесение данных в буфер называется копированием или вырезанием в зависимости от того, остаются ли при занесении данные в приложении. "Копирование " означает, что в буфер помещена копия данных, выделенных в исходном документе. "Вырезание " означает, что выделенные данные удаляются из исходного документа и помещаются в буфер.

Извлечение данных из буфера называется вставкой. При вставке данных из буфера в документ содержимое первого остается без изменений. Данные можно вставлять из буфера неограниченное число раз.

Буфер обмена Windows служит для хранения только одного объекта. При новой операции копирования или вырезания предыдущее содержимое буфера стирается. Буфер обмена может хранить данные неограниченно долго, до следующей операции копирования или перезагрузки компьютера.

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

Для того чтобы занести данные в буфер, следует выделить их при помощи мыши или клавиатуры, а затем выбрать команду Вырезать или Копировать . При вставке из буфера с помощью команды Вставить фрагмент помещается в текущую позицию документа (например, в текстовом документе это место отмечено курсором).

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

Таблица 2.9 . Управление буфером обмена Windows.

Кнопка Действие Комбинация клавиш
Вырезать CTRL + X или SHIFT + Delete
Копировать CTRL + C или CTRL + Insert
Вставить CTRL + V или SHIFT + Insert

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

Копирование содержимого экрана в буфер обмена

Содержимое экрана в Windows копируется в буфер при помощи клавиши Print Screen . Можно также скопировать содержимое активного окна, нажав комбинацию клавиш ALT + Print Screen . Содержимое экрана копируется в буфер в виде растрового (точечного) рисунка и пригодно для обработки при помощи любого графического редактора, поддерживающего такой формат. Можно, например, использовать редактор Paint , входящий в стандартный комплект Windows.

Буфер обмена Windows позволяет перемещать фрагменты текста или определённые данные между открытыми приложениями. Однако, его можно сделать ещё более эффективным!

Помните уже старый анекдот когда профессор спрашивал у студента, какова была методика написания его дипломной работы? - CTRL+C - CTRL+V, - ответил студент. Но, наверняка, он, как и многие другие пользователи ПК, не задумывался, за счёт чего работают эти "волшебные" сочетания клавиш, позволяющие копировать и вставлять практически любые данные...

А работают они благодаря такой замечательной штуке, как буфер обмена. И сегодня мы с Вами разберёмся что это такое, где его искать и как оптимизировать работу с ним!

Что такое буфер обмена

Буфер обмена - это функция операционной системы (не только Windows), которая позволяет временно хранить определённый фрагмент данных (или даже целый файл) в специально отведённой области оперативной памяти. При этом, если размер файла больше, чем ОЗУ на компьютере, то в качестве дополнительного временного хранилища задействуется файл подкачки (если он активен).

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

  1. При помощи контекстного меню . Выделяем подлежащие копированию объекты и кликаем по ним правой кнопкой мыши. В открывшемся меню можно выбрать пункты "Копировать" и "Вырезать" или "Вставить".
  2. При помощи меню "Правка" . Большинство программ Windows имеют в верхней части специальную строку меню. В этой строке, как правило, есть раздел "Правка", который содержит нужные нам команды.
  3. При помощи горячих клавиш . Наиболее быстрый способ взаимодействия с буфером обмена - использование клавиатурных комбинаций:
  • CTRL+X (SHIFT+DEL) - "Вырезать";
  • CTRL+C (CTRL+Insert) - "Копировать";
  • CTRL+V (SHIFT+Insert) - "Вставить".

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

Приведём простейший пример. Допустим, мы скопировали с сайта строку некоего форматированного текста. Если вставить этот текст в текстовый процессор, вроде Microsoft Office Word или OpenOffice Writer, то мы получим его оригинальную копию с сохранением всех особенностей форматирования (жирность текста, междустрочные отступы и т.п.).

Если вставить этот же фрагмент текста в текстовый редактор класса Блокнота, то сам текст сохранится, но его форматирование нет, поскольку Блокнот не поддерживает форматирование и будет запрашивать из буфера обмена именно неформатированную версию. Наконец, если попытаться вставить наш текст в некоторые графические редакторы, то они либо вообще ничего не вставят, либо вернут нам нашу надпись в растрированном виде!

Таким образом, мы видим, что простенькая, на первый взгляд, всем известная функция системы - не такая уж и простая, если вникнуть поглубже! Поэтому, давайте немного вникнем:)

Особенности буфера обмена в разных версиях Windows

В Windows 2000 и XP существовал способ просмотра и управления содержимым буфера обмена. Это была утилита под названием "Папка обмена". Запускалась она при помощи исполняемого файла по адресу C:\Windows\System32\clipbrd.exe (WIN+R - clipbrd.exe - ENTER):

Данная утилита позволяла не только просматривать, что находится в данный момент в буфере, но также давала возможность сохранить данные в файл (формат CLP), восстановить их из ранее сохранённого файла, очистить буфер и даже изменить формат данных для вставки (см. меню "Вид" на скриншоте выше).

Из последующих версий Windows утилита, почему-то, была удалена (хотя, при желании Вы можете и программа будет работать даже на Windows 10). Вместо неё осталось только небольшое консольное приложение по адресу C:\Windows\System32\clip.exe. Запустить его напрямую нельзя, но можно вызвать из Командной строки (WIN+R - cmd - ENTER):

Небольшая справка по команде "clip" (или "clip.exe") покажет нам, что команда не имеет никаких параметров. Она позволяет перенаправить содержимое буфера в файл (обычно в формате TXT) или считать его из ранее созданного файла посредством указания направления копирования при помощи треугольной скобки (clip > файл - запись в файл или clip < файл - чтение из файла). Вторым примером использования команды является копирование в буфер содержимого указанной перед вертикальной чертой папки (адрес_папки | clip ).

Однако, есть и один секрет, который позволяет при помощи как раз последнего примера очистить буфер обмена (полезно, если там хранится большой файл). Для этого в Командной строке прописываем следующее: echo off | clip . Как видите, вместо адреса папки для копирования мы прописали стандартную консольную команду отключения вывода данных и поместили её в буфер. Поскольку команда не возвращает никаких данных, она просто очищает буфер обмена:

Чтобы каждый раз не "нырять" в Командную строку для очистки буфера, можно создать специальный ярлык, который будет делать это автоматически! Для этого в качестве объекта укажите следующую строку: C:\Windows\System32\cmd.exe /c "echo off | clip" и сохраните созданный ярлык. Учтите, что в Windows XP приведённый выше пример не будет работать, поскольку там вместо консольной утилиты CLIP используется рассмотренная выше графическая программа Clipbrd.exe, которая управляет буфером обмена!

Программы для работы с буфером обмена

Штатный буфер обмена Windows - вещь очень полезная. Но, увы, она не лишена и недостатков. Основным из них является то, что буфер может хранить в себе только один набор данных, который тут же перезаписывается новой информацией, если мы копируем ещё что-то. Также порой бывает нужно вставлять определённые фрагменты данных и хорошо бы было, если бы буфер мог сохранять их даже после перезагрузки ПК.

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

Punto Switcher

Наверняка, многие из Вас знают (а, может, и используют) замечательную программу для автоматического переключения раскладки клавиатуры Punto Switcher . Однако, кроме переключения клавиатуры, она имеет ещё много полезных функций, в том числе, для расширения возможностей буфера обмена:

Во-первых, программа может реализовать мультибуфер с запоминанием всех текстовых фрагментов, которые были скопированы ранее. Во-вторых, она имеет модуль Дневник , который позволяет автоматически сохранять по дням всё, что вводилось с клавиатуры или копировалось проходило через буфер обмена. Дневник активируется в специальном разделе настроек весьма просто, а с мультибуфером придётся чуть сложнее...

Сначала нам нужно активировать опцию "Следить за буфером обмена" в разделе настроек "Общие" на вкладке "Дополнительные" (см. скриншот выше). Вторым шагом нужно настроить сочетание клавиш, которое будет открывать доступ к истории буфера обмена. Для этого идём в раздел настроек "Горячие клавиши" и назначаем сочетание для функции "Показать историю буфера обмена" :

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

Использование Punto Switcher в качестве менеджера буфера обмена выгодно тем, что не нужно устанавливать никаких дополнительных утилит. Лично я настроил мультибуфер на всех компьютерах, с которыми работаю, поскольку это реально удобно. Однако, у данного решения есть и ряд минусов ...

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

CLCL

Первым делом хочу обратить Ваше внимание на одну программу японского происхождения - CLCL :

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

  • малый размер (всего около 300 КБ со всеми плагинами!);
  • поддержка и текстовых, и графических данных;
  • наличие истории копирования;
  • функция вставки часто используемых шаблонов;
  • управление горячими клавишами.

Плюс ко всему, CLCL является портативной программой и для своей работы не требует установки. Это позволяет настроить её всего раз и затем переносить на любой компьютер, с которым Вы работаете, сохраняя доступ к привычным функциям, где бы Вы ни были.

Стоит, правда, отметить, что CLCL имеет несколько версий. Русскоязычная версия 1.1.2 (которая есть на нашем сайте), увы, не обновлялась с 2005 года. Новая же ветка программы (2.0 от 2015 года) существует только на английском и японском языках. От своей более ранней реализации новая CLCL отличается расширенным набором поддерживаемых форматов (русскоязычная поддерживала только точечные рисунки, обычный текст и Юникод), а также более структурированным меню. В остальном же особых изменений нет, поэтому можно с успехом пользоваться старой версией (пока я не русифицирую новую:))).

Ditto

Если Вы не боитесь целой кучи настроек и хотите выжать максимум из своего буфера обмена, то Вам может понравиться программа :

Ditto по своему функционалу стоит практически в одном ряду с CLCL. Он "из коробки" поддерживает все возможные форматы буфера обмена (правда, многие из них по умолчанию отключены), имеет функцию запоминания скопированных фрагментов и систему вставки пользовательских шаблонов. Кроме того, он может похвастаться:

  • наличием поиска по сохранённым клипам (так здесь называются скопированные фрагменты);
  • группирование клипов;
  • импорт и экспорт сохранённых копий буфера обмена;
  • синхронизация содержимого буфера по сети;
  • поддержка работы с несколькими буферами обмена с переключением между ними.

В отличие от CLCL, Ditto имеет значительно большие размеры (около 15 МБ). Но и функционал, в принципе, намного шире. К тому же Ditto регулярно обновляется и имеет отдельные версии как под 32-битные, так и под 64-битные системы (в том числе и portable). Единственным недостатком программы для русскоязычного пользователя является не до конца русифицированный интерфейс, что в сочетании с большим количеством настроек может несколько сбить с толку неподготовленного новичка. Поэтому рекомендовать Ditto можно, скорее, уверенным пользователям ПК.

Clipdiary

Если Вы ищете программу с дружелюбным для простого пользователя русскоязычным интерфейсом и мощным функционалом, то стоит обратить внимание на Clipdiary :

Программа вообще-то платная, но русскоязычным пользователям доступна под бесплатной лицензией для некоммерческого использования. Чтобы снять ограничение на 30-дневный пробный срок зайдите в меню "Помощь" основного окна и кликните пункт "Активировать бесплатно". Откроется веб-страница, внизу которой Вам нужно будет нажать кнопку "Получить ключ", а затем скопировать полученный набор символов и вставить его в окошко регистрации Clipdiary.

После регистрации у Вас пропадёт отсчёт дней пробного периода и Вы без ограничений сможете воспользоваться всеми возможностями программы:

  • поиск по базе данных сохранённых клипов;
  • присвоение ярлыков клипам для быстрого доступа;
  • защита базы данных паролем;
  • выбор формата для вставки;
  • удобная сортировка и представление клипов.

Clipdiary имеет довольно простой и удобный интерфейс, который сочетается с весьма неплохим функционалом. Поэтому данная программа подойдёт одинаково хорошо как новичкам, так и продвинутым пользователям. Кстати, у неё также есть portable-версия, которая может работать без установки. Единственным недостатком является ограничение на использование в коммерческих организациях.

ClipAngel

Напоследок хотелось бы упомянуть об ещё одной достойной отечественной реализации менеджера буфера обмена :

Создана программа была только в начале 2017 года, но за недолгое время своего развития уже успела "дорасти" до вполне серьёзного и удобного инструмента, который может конкурировать с именитыми аналогами! В арсенале программы имеется:

  • автоматическое сохранение истории буфера обмена;
  • возможность отмечать для быстрого использования наиболее часто употребляемые клипы;
  • функция сравнения фрагментов клипов для выявления несоответствий;
  • удобные функции сортировки списка истории и поиска по нему;
  • выбор формата вставки клипа, а также его быстрый перевод онлайн.

ClipAngel поддерживает изначально все форматы буфера обмена и имеет весьма простой интерфейс настройки. Кроме того, в программу встроен небольшой текстовый редактор, который можно использовать для быстрой правки текста в сохранённых клипах! Для доступа же к наиболее востребованным функциям Вы можете задать собственные "горячие" клавиши.

ClipAngel не требует установки, а его размер в 3 МБ значительно меньше, чем у большинства аналогов. Единственный недостаток программы в том, что она написана на.NET Framework 4.5, поэтому потребляет сравнительно больше ресурсов ПК, нежели подобные приложения, созданные на языках более низкого уровня.

Выводы

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

Заведите на своём ПК небольшого "помощника" и забудьте о постоянных копированиях-вставках. Теперь все нужные фрагменты текста и картинок будут доступны Вам буквально в два клика!

P.S. Разрешается свободно копировать и цитировать данную статью при условии указания открытой активной ссылки на источник и сохранения авторства Руслана Тертышного.