Блог

Как скопировать таблицу со скриншота в Excel или Google Таблицы

Автор InSnap · Опубликовано · OCR, таблица, excel, google таблицы, скриншот

Как скопировать таблицу со скриншота в Excel или Google Таблицы

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

Снимок таблицы — счёта, страницы с ценами, дашборда — это пиксели, а не данные. Его нельзя отсортировать, просуммировать или вставить в таблицу так, чтобы колонки выстроились.

Распознавание текста вытащит из него слова. Чего оно само по себе не сделает — не соберёт сетку обратно. Распознанный текст возвращается строками, а строка таблицы — это одна строка, в которой просто оказалось несколько ячеек, разделённых пробелами. Всё дальнейшее — небольшая уборка, сделанная в таблице, а не в снимке.

Что переживает распознавание, а что нет

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

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

Поэтому при вставке прямо из OCR в таблицу получается один столбец, куда всё набито. Данные на месте; структуру нужно один раз собрать заново.

Запуск распознавания текста на снимке экрана

Шаг 1: снимайте в размере, который распознаватель читает

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

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

Распознавание в InSnap работает по пикселям, которые вы выделили: обведите область вокруг таблицы, нажмите OCR на панели инструментов снимка, и распознанные строки появятся в панели рядом с выделением. Каждая строка — в целом одна строка таблицы. Можно также провести по тексту на самом снимке, символ за символом, если нужно заново выделить одну ячейку.

Одна и та же строка в пяти размерах текста, распознанная заново в каждом

Шаг 2: перенесите текст в таблицу

Скопируйте распознанный текст из панели и вставьте его в таблицу. И Excel, и Google Таблицы принимают обычный текст с переносами строк и раскладывают его по одному столбцу, по строке таблицы на строку листа — это и есть нужный здесь результат.

Google Таблицы иногда показывают диалог Import при вставке текста с табуляцией, потому что не могут понять, являются ли табуляции колонками. Command-Shift-V на Mac или Ctrl-Shift-V в Windows вставляют без форматирования и минуют этот диалог; то же сочетание в Excel (там это Paste Values).

Если каждая строка попала в один столбец — так и должно быть. Следующий шаг это исправит.

Шаг 3: разделите колонки

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

Excel. Выделите столбец, выберите Data › Text to Columns (в русской версии — «Данные › Текст по столбцам»), укажите Delimited («С разделителями»), отметьте Space («Пробел») — или Tab («Табуляция»), если строки пришли с табуляцией, — и завершите. Проверьте предпросмотр перед подтверждением: пробелы внутри ячейки — «New York», «Acme Inc.» — тоже разделятся, так что, возможно, придётся добавить пару дополнительных разделителей или поправить такие ячейки вручную.

Google Таблицы. Выделите столбец и выберите Data › Split text to columns (в русской версии — «Данные › Разделить текст на столбцы»), затем задайте разделитель Space («Пробел») или Custom («Другой символ»), если хотите указать его сами. Разделение происходит на месте.

Собственный путь Excel. В свежих версиях Excel есть Data › From Picture («Данные › Из рисунка»): он сам запускает распознавание по файлу изображения и сразу строит таблицу. Стоит попробовать на сохранённом снимке: когда у таблицы видны линии сетки, часто получается нормальная таблица и уборки заметно меньше. Перед тем как полагаться на это, проверьте свою версию.

Шаг 4: проверьте числа

Уборку люди пропускают — а важна именно она, потому что распознавание ошибается молча. Оно возвращает лучшее предположение, а не ошибку.

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

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

Альтернативы, о которых стоит знать

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

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

Частые вопросы

Почему при вставке текста из OCR в Excel всё оказывается в одном столбце?

Потому что распознавание возвращает строки текста, а не ячейки. Промежутки между колонками — это белое пространство на экране, и распознаватель не может надёжно сохранить их как разделители. Используйте «Текст по столбцам» или «Разделить текст на столбцы», чтобы собрать сетку заново.

Может ли InSnap распознать таблицу и экспортировать её в виде таблицы?

Нет. Распознавание в InSnap даёт выделяемый текст, который можно скопировать куда угодно. Шаг со сборкой колонок делается в Excel или Google Таблицах, где заодно можно проверить числа.

Работает ли распознавание с числами и знаками?

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

Распознавание выполняется локально?

Да, в InSnap. Снимок и распознанный текст остаются на вашем устройстве; ничего не загружается. Распознавание входит в бесплатную версию на macOS и Windows.

Как скопировать текст со скриншота или изображения на Mac и Windows

Как превратить слова со скриншота в текст: встроенные средства Mac и Windows, быстрое распознавание на устройстве в InSnap и его языковые ограничения.

Как скопировать текст из видео или с паузы

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

Почему OCR возвращает неверное слово, а не ошибку

Распознавание текста почти никогда не говорит, что не справилось: оно выдаёт целое предложение с одним неверным символом — тем самым. Где это происходит и как это поймать.

Настройки закрепления: непрозрачность и сквозные клики по умолчанию

Начальная непрозрачность, сквозные клики для новых закреплённых и настройки каждой картинки: как держать закреплённые снимки читаемыми и не мешать кликам.

Следующий скриншот — в одном сочетании клавиш.

macOS 14.4+ (Apple Silicon и Intel) · Windows 10+ (64-разрядная)