Почему при копировании из пдф в ворд получаются иероглифы
Перейти к содержимому

Почему при копировании из пдф в ворд получаются иероглифы

  • автор:

[Legacy] [PagePlus] Как избавиться от иероглифов при копировании из PDF?

Суть проблемы новичка. Понадобился жирный шрифт GOST B для большого перевода с чертежами, в оригинале можно сделать его только полужирным. В одном из редакторов сделал как надо, шрифт дубль. При создании PDF все отлично. Но при копировании с готового PDF в Word или блокнот возникают иероглифы. Скорее всего проблема в самом шрифте, так как оригинальный тоже переносится таким образом. Что можно предпринять?

Последнее редактирование: 04.04.2018

Почему при копировании из пдф в ворд получаются иероглифы

Электронные книги вошли в нашу повседневную жизнь и продолжают укреплять свою позицию. PDF – один из самых популярных форматов, который можно встретить на интернет просторах, посещая сайты и магазины. Но бывают досадные ситуации, когда текст, который мы хотим скопировать, просто превращается в непонятные символы. Кто-то на них говорит иероглифы, другие – кракозябры . Как же исправить такую ситуацию?

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

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

Наша книга (тестовая) полностью поддерживает копирование текста и изображений. Но при попытке перенести такой текст в Microsoft Office Word, можно видеть такие нечитабельные символы как на скриншоте сверху статьи.

Способ 1 (длинный).

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

Чтобы можно было видеть нормальные буквы, при переносе текста нужно устанавливать соответствующие шрифты .

Чтобы узнать какие именно нужно инсталлировать на компьютер шрифты, нужно открыть наш PDF документ поддерживаемой программой (на примере PDF-XChange Viewer ). Далее идем в «Файл» → «Свойства документа» (можно нажать сочетание клавиш Ctrl + D).

кракозябры

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

кракозябры

кракозябры

Далее копируем и вставляем текст из PDF документа, выделяем его в Microsoft Office Word (или в другом офисном редакторе, который у вас установлен) и выбираем из списка недавно установленный шрифт. Все должно быть нормально. Снизу на скриншоте видно, что я намеренно применил нужный шрифт только на одно предложение, другую часть текста прочитать невозможно.

кракозябры

Способ 2 (быстро и удобно).

кракозябры

Другой, более правильный и простой вариант – это использование программы (или плагина к редактору Notepad ++ ), которая называется Shtirlitz. Программа старая, давно не обновлялась, однако работает отлично. Прямо на лету выполняется вставка нормального текста. Никаких шрифтов не требуется. После копирования текста с данной программы и дальнейшей вставкой его в редактор Microsoft Office Word, все буквы и символы будут читаться и с использованием любого шрифта. Первый вариант не позволяет изменить шрифт. То есть, всегда, и на каждом компьютере нужно будет инсталлировать нужные шрифты для чтения только определенного документа. А если таких документов несколько сотен? Поэтому желательно воспользоваться этой программой для декодирования.

Способ 3 (онлайн).

Кто не хочет использовать программу Shtirlitz или она не работает, может использовать следующие онлайн сервисы для перекодирования (отдельные сервисы имеют ограничения по объему текста).

кракозябры

Обратите внимание, что кодирование нашей тестовой книги windows-1252. Для нас нужна кодировка windows-1251. Поэтому переходим на сервис online-decoder.com.

Там можно видеть окно, где написано «Скопируйте сюда текст». Вставляем наш непонятный текст и нажимаем на кнопку «Подбор». Такой способ будет правильно использовать если вам неизвестна система кодирования. Декодер попытается подобрать ее автоматически. Если вы знаете исходное кодирование своей кракозябры, то можете смело нажимать кнопку «Точно», указав перед этим кодирование, напротив текста «Я знаю нужные кодировки».

кракозябры

Второй сервис «artlebedev.ru». Есть два способа для декодирования: «Просто» и «Сложно». Первый вариант работает на автомате. Второй – дает возможность, при необходимости, указать исходное и конечное кодирование.

кракозябры

Третий онлайн сервис для декодирования текста «2cyr.com» имеет отличие от предыдущих в том, что позволяет выбирать язык. Кроме русского, доступен также и украинский язык интерфейса (и надеюсь, что кодирования также, просто не было возможности проверить).

Есть также два режима: автоматический и режим эксперта. Во втором можно указывать исходное и конечное кодирование. Рекомендуется автоматический режим. После того как вставили текст, напротив слов «Выберите кодировку : » , нужно выбрать «Автоматически (рекомендуется)» и нажать на кнопку «Ок».

Все три сервиса отлично работали на моей тестовой книге в формате PDF с кракозябрами.

Способ 4 (с помощью макросов для Microsoft Office Word ).

Еще один вариант для программы Microsoft Office Word. Никаких шрифтов ставить не нужно. Создаем макрос со следующим кодом:

Код 1: «Перекодирование 1252 в 1251»

Sub Corr1252_1251()
Dim s$, i&, j&
s = Selection
For i = 1 To Len(s)
j = AscW(Mid$(s, i, 1))
If j < 256 Then
Mid$(s, i, 1) = Chr(j)
‘ Debug.Print i & vbTab & Mid$(s, i, 1) & vbTab & j & vbTab & Chr(j)
End If
Next
Selection.Text = s
End Sub

Код 2: «Перекодирование 1252 в 1251 (с учетом русской буквы Ё)»

Sub changeToRus()

‘ Замена кракозябр на кириллические буквы
‘ CP1252 -> CP1251

For i = 192 To 255
a1 = i
a = Trim(«^u») & Trim(Str(a1))
‘ Формирование запроса для поля Найти
sRus = Array(«А», «Б», «В», «Г», «Д», «Е», «Ж», «З», «И», «Й», «К», «Л», «М», «Н», «О», _
«П», «Р», «С», «Т», «У», «Ф», «Х», «Ц», «Ч», «Ш», «Щ», «Ъ», «Ы», «Ь», «Э», «Ю», «Я», _
«а», «б», «в», «г», «д», «е», «ж», «з», «и», «й», «к», «л», «м», «н», «о», _
«п», «р», «с», «т», «у», «ф», «х», «ц», «ч», «ш», «щ», «ъ», «ы», «ь», «э», «ю», «я»)
‘ Формирование массива кириллических букв для поля Заменить
Selection.Find.ClearFormatting
Selection.Find.Replacement.ClearFormatting
With Selection.Find
.Text = a
.Replacement.Text = sRus(i — 192)
.Forward = True
.Wrap = wdFindContinue
.MatchCase = True
End With
Selection.Find.Execute Replace:=wdReplaceAll
‘ Выполнение замены по тексту
Next i

‘ Замена Ё и ё
Selection.Find.ClearFormatting
Selection.Find.Replacement.ClearFormatting
With Selection.Find
.Text = ChrW(168)
.Replacement.Text = «Ё»
.Forward = True
.Wrap = wdFindContinue
End With
Selection.Find.Execute Replace:=wdReplaceAll
Selection.Find.ClearFormatting
Selection.Find.Replacement.ClearFormatting
With Selection.Find
.Text = ChrW(184)
.Replacement.Text = «ё»
.Forward = True
.Wrap = wdFindContinue
End With
Selection.Find.Execute Replace:=wdReplaceAll
End Sub

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

Для добавления готового макроса в Word делаем следующее:

Открываем редактор и переходим в «Вид».

кракозябры

Там находим кнопку «Макросы» и нажимаем на нее.

кракозябры

кракозябры

Даем для макроса имя (любое, оно будет автоматически изменено при полном копировании кода выше).

кракозябры

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

кракозябры

Как видно, макрос начинается так:

Sub названиемакроса()
дальше идет код макроса
End Sub

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

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

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

кракозябры

Ваш текст должен стать читабельным.

кракозябры

Источник макросов для Microsoft Office Word: http://wordexpert.ru

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

Почему при копировании из пдф в ворд получаются иероглифы

Часовой пояс: UTC + 3 часа

При копировании текста из PDF в Word получается «абра-кадабра», какие-то тире и знаки вопроса, чем открыть, какя прога?

Новая тема / Ответить Сообщений: 2
Версия для печати (полностью) Пред. тема | След. тема
В случае проблем с отображением форума, отключите блокировщик рекламы

И если можно ссылку дайте на нее. Спасибо большое.

VJET
Вообще то причин этого может быть много. Первая, несовместимость кодировки. А зачем вам WordPad? Если нужен только текст попробуйте копировать в блокнот. Не получится попробуйте выделить нужный текст и просто мышкой перетащить в блокнот. А вообще в некоторых PDF копирование никак не удаётся. Ведь они все созданы разными авторами. Бывают PDF в котором текст идёт не как простой текст, а отдельными снимками и скопировать его не удаётся точно так же как и с любого снимка(скрина).

Новая тема / Ответить Сообщений: 2

Часовой пояс: UTC + 3 часа

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 4

Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

При копировании русского текста из документа PDF в Word вместо текста вставляются символы непонятные как исправить

Сохраните документ PDF как обычный текст в блокноте (Файл — Сохранить как текст)
Скопируйте текст с блокнота и вставьте в Word. Далее сохранить можно в разные форматы, в том числе в формат PDF.

Остальные ответы
Измените пожалуйсто шрифт на Time Romans
Шрифты кодировки (на сайте Лебедева есть проверка )
Кодировка должна быть Кириллица, Юникод.
А у меня получаются ошибки, когда я копирую текст по-казахскому языку из pdf в word.

Ни один из перечисленных выше вариантов не решает проблем.
Так называемый «Лучшей ответ» : «Сохраните документ PDF как обычный текст в блокноте (Файл — Сохранить как текст) .. Скопируйте текст с блокнота. «
В блокноте также кракозяблы.

нужно ставить шрифты в винду такие же как в пдф

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

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

Ваш адрес email не будет опубликован. Обязательные поля помечены *