Войти в почту

Как скопировать текст с изображения?

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

Как скопировать текст с изображения?
© It-world

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

Как же тогда копируется текст с экрана, если там отображены просто наборы пикселей? При копировании текста на самом деле копируется не растровый образ, а та самая связь (текстовый буфер), из которой извлекается текст. Но если связь потеряна или текст изначально существовал в виде графики, то остается только растровый образ, и получить из него текст невозможно.

Или все-таки возможно?

Но ведь Windows умеет читать для слепых!

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

Согласно рекламным заявлениям, эта функция позволяет читать вслух веб-страницы, текстовые документы и другие файлы, озвучивать каждое действие, которое пользователь совершает в Windows. Narrator работает в Windows 10 и Windows 11.

Но в качестве предлагаемой поддержки лучше убедиться на личном опыте. Для включения «экранного диктора» надо войти в «Параметры» (Settings), затем перейти по ветке «Специальные возможности» и включить «Экранный диктор».

Параметры настройки конфигурации «Экранного диктора» (Narrator)

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

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

«Google Объектив» (Google Lens)

Для чтения текст с экрана нам потребуется мобильное приложение, получившее название Google Lens (в русской версии Android оно получило название «Google Объектив»).

Начнем с функции извлечения текста с растрового изображения. Его можно снять камерой смартфона вручную в реальном времени или воспользоваться графическим файлом, хранящимся, например, в «Галерее». Если, например, требуется получить текст со страницы в браузере или из приложения (где копирование текста с экрана запрещено разработчиком страницы/приложения), то потребуется сначала сделать скриншот нужного фрагмента изображения текста (одновременное нажатие кнопок «Вкл» и «Вниз»), а затем взять скриншот, обычно доступный сразу через Галерею.

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

Текст попадет в буфер обмена мобильной ОС. Полученный текст можно вставить в текстовый файл (например, docx или txt). Он будет читаемым, а качество распознания часто идеальное, если не злоупотреблять разрешением графического оригинала.

Чтение текста с изображения растровой графики

Что еще позволяет сделать Google Lens?

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

Перевод текст с экрана ноутбука с помощью Google Lens

Отметим еще одну опцию Google Lens – чтение QR-кода. Известно, что Google предоставляет поиск не только по тексту, но и по картинкам. Google Lens добавляет к ней интеллектуальный анализ. Если на оригинальной картинке обнаружится QR-код, то происходит чтение зашифрованного в графике текста (обычно это - веб-ссылка). Она выводится поверх QR-кода, позволяя осуществить переход к получению расширенной информации.

Google Lens умеет читать QR-коды

ShiftKey – механизм синхронизации буфера обмена

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

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

Новая возможность появилась благодаря созданию мобильного приложения «Клавиатура Microsoft SwiftKey» для Android. Сам механизм получил название Cloud Clipboard.

На текущий момент этот механизм работает только для Android в связке с устройствами на Windows 10/11. Поддержка для устройств Mac и Linux пока отсутствует.

Приложение «Клавиатура Microsoft SwiftKey» в Google Play

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

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

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

Начать настройку можно с мобильного Android-устройства (смартфона, планшета). Сначала надо загрузить приложение «Клавиатура Microsoft SwiftKey» из Google Play. При первом запуске будет предложено включить SwiftKey.

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

Процесс подключения механизма SwiftKey для Android-устройства

Для настройки SwiftKey нужно выбрать опцию «Расширенный ввод» и затем опцию «Буфер». Для подключения механизма переноса данных в буфере обмена необходимо включить параметр «Синхронизировать историю буфера». По умолчанию он отключен.

Что является управляющим центром для синхронизации? Для каждой учетной записи Microsoft создается уникальный 32-символьный идентификатор. Для него резервируется канал переноса данных. На базе ввода формируется словарь наиболее часто вводимых слов. Его применение позволяет существенно повысить скорость ввода текста. Это особенно важно для мобильных устройств, где вводить слова приходится с экрана с экранной клавиатуры.

Созданный буфер обмена доступен в любом мобильном приложении на Android-устройстве. Единственное условие - подключение клавиатуры SwiftKey. В нашем примере ввод в буфер обмена осуществляется через файловый менеджер Total Commander (справа).

Настройка буфера обмена в Android

Подключение общего буфера обмена на компьютере с Windows 10/11 не вызывает сложностей.

Сначала надо войти в «Настройки», выбрать раздел «Система» и найти пункт «Буфер обмена». Для подключения синхронизации нужно включить опцию «Журнал буфера обмена на ваших устройствах».

Если еще не подключена учетная запись Microsoft, то ОС попросить сделать это. Синхронизация включена.

Подключение компьютера Windows 11 к общему буферу обмена

Опция копирования текста/графики работает в обоих направлениях при включенной синхронизации. Благодаря этому, можно распознать текст из растровой графике на смартфоне, скопировать его в буфер обмена. Благодаря синхронизации, этот текст через 1-2 секунду будет доступен в буфере обмена компьютера. Если включен многоэлементный буфер обмена (опция «Журнал буфера обмена»), то выбрать нужного текстового фрагмента можно из набора, нажав сочетание клавиш Win + V.