Вы копируете текст из PDF и вставляете его в другое место — и результат выглядит неправильным. Символы не в порядке, лигатуры типа "фи" стать "фи" или исчезают, слова сливаются без пробелов, или специальные символы превращаются в вопросительные знаки. Это проблема кодировки текста PDF, и у нее есть конкретные причины, которые объясняют, почему это происходит и что можно с этим сделать.

Как PDF хранит текст и почему это работает неправильно
PDF был разработан в первую очередь как визуальный формат — он точно описывает, как выглядит страница, а не что означает текст. Внутренняя кодировка текста в PDF может сильно отличаться от стандартного Unicode. Некоторые PDF используют собственные сопоставления глифов, в которых коды символов, хранящиеся внутри, не соответствуют стандартным буквенным кодам, поэтому при копировании буфер обмена получает внутренние коды, а не символы, которые вы видите.
Хорошо построенный PDF включает таблицу сопоставления ToUnicode, которая сообщает зрителю, как преобразовать внутренние коды в стандартные символы Unicode. Если эта таблица отсутствует, является неполной или неправильной, копирование и вставка приводит к искаженным результатам, хотя текст отображается на экране идеально. Отображение и копируемый текст происходят из разных систем — отображение использует визуальный глиф, копирование-вставка — текстовые данные.
Попробуйте PDF OCR
Никакой установки не требуется. Работает прямо в вашем браузере.
Лигатуры и специальные символы
Лигатуры представляют собой типографские сочетания — «фи», «фл», «фф», «ффи»; — когда два или три символа объединены в один глиф по эстетическим соображениям. В плохо закодированном PDF лигатурный глиф не имеет сопоставления ToUnicode для отдельных символов, которые он представляет. При копировании лигатура либо становится одним специальным символом (fi вместо fi), либо ничем, либо становится символом-заполнителем.
Вот почему при копировании некоторых профессионально отпечатанных PDF-файлов в тексте пропускаются буквы — такие слова, как «офис»; стать «офисом»; потому что "ffi" лигатура не имела пригодного для использования сопоставления Юникода. На экране слово выглядело правильно; базовые текстовые данные были повреждены.
Пропущенные пробелы между словами
Некоторые PDF представляют пробелы не как фактические символы пробела в текстовом потоке, а как позиционные смещения — средство просмотра визуализирует пробел между словами, перемещая позицию курсора, а не вставляя символ пробела. При копировании позиционное смещение не преобразуется в пробел, поэтому слова сливаются: "слово" вместо «слово».
Это часто встречается в файлах PDF, экспортированных из дизайнерских приложений, таких как InDesign или Illustrator, когда расстояние между текстами контролируется на уровне дизайна, а не посредством стандартного кодирования текста.
Проблемы со столбцами и порядком чтения
В многоколоночном PDF порядок визуального чтения (первый столбец вниз, затем второй столбец вниз) может не соответствовать внутреннему порядку текста (слева направо по всей ширине страницы). Копирование текста из макета с двумя столбцами часто приводит к тому, что текст чередуется между столбцами построчно, что делает его зашифрованным, даже если каждое отдельное слово правильное.
Это не проблема кодировки — это проблема порядка чтения. Текст правильно закодирован; он просто хранится в порядке, который не соответствует тому, как его прочитал бы человек. Исправление состоит в том, чтобы копировать текст из одного столбца за раз, а не выбирать его в обоих столбцах.
Что делать, если скопированный текст искажен
- Попробуйте другую программу просмотра PDF: разные программы просмотра обрабатывают сопоставление ToUnicode по-разному. Если копия Chrome создает искаженный текст, попробуйте скопировать ее из Adobe Reader — зачастую для того же PDF результаты будут более четкими.
- Сначала преобразовать в Word: преобразователь a PDF в Word повторно обрабатывает кодировку текста во время преобразования. Полученный документ Word часто производит чистую копию, даже если исходный PDF этого не сделал.
- Запустите распознавание текста на копии: OCR инструменты повторно считывают видимый текст с изображений страниц и создают новый, правильно закодированный текст. Результат OCR PDF может обеспечить лучшее копирование и вставку, чем исходная кодировка, особенно для плохо закодированного профессионального набора текста.
- Используйте Find & Замените типичные ошибки: если одна и та же лигатура или символ постоянно вставляются неправильно, вставьте вставленный результат в Word и используйте «Найти и найти». Замените, чтобы исправить повторяющуюся ошибку.
Предотвращение проблемы в источнике
Если вы создаете PDF-файлы и хотите обеспечить чистое копирование и вставку для получателей, используйте приложения, которые генерируют правильные сопоставления ToUnicode. Microsoft Word экспортирует с правильным сопоставлением Unicode по умолчанию. Adobe InDesign может экспортировать с правильной кодировкой текста или без нее в зависимости от настроек — в диалоговом окне «Экспорт PDF» установите флажок «Использовать структуру документа для порядка табуляции». и параметры доступности текста включены. Протестируйте копирование и вставку из экспортированного PDF перед отправкой, чтобы выявить проблемы с кодировкой до того, как они достигнут получателей.
Попробуйте PDF OCR
Никакой установки не требуется. Работает прямо в вашем браузере.
