Не могу скопировать текст (рус) из PDF
имхо, тут два выхода:
1. написать собственный декодировщик. не факт, что сработает, потому что например у жирного шрифта таблица может быть другая
2. распознавать.
pdf->tif делается за секунды
tif->txt сносно делает cunei за минуты
ну или ABBYY PDF Transformer
А tif — это картинка? если да — то это наверно то же, что и "распознавать"?
http://www.artlebedev.ru/tools/decoder/
работает в автоматическом режиме.
Бля, почему он лучше работает, чем enca?
работает в автоматическом режиме.
Бля, почему он лучше работает, чем enca?
Пока действую PDF -> JPG, далее Файнридер-спринт. Но ошибки встречаются
правда хз, какое там качество текстового слоя.
recode utf8..cp1252 | recode cp1251..utf8
ОГЛАВЛЕНИЕ
Перечень математических символов и сокращений ........................ 3
Предисловие ......................................................................................... 5
Введение ............................................................................................... 7
Г л а в а 1. Основные понятия и теоремы теории вероятностей ..... 15
1.1. Элементы комбинаторики ........................................................
1.2. Задачи на непосредственное применение формул комби-
наторики .....................................................................................
1.3. Треугольник Паскаля. Бином Ньютона ...................................
1.4. Виды случайных событий. Операции над событиями ............
1.5. Определения вероятности .........................................................
1.6. Некоторые теоремы теории вероятностей ..............................
1.7. Применение комбинаторики для подсчета вероятностей .....
1.8. Формула полной вероятности ..................................................
1.9. Формула Байеса. Вероятность оценки гипотез .......................
1.10. Независимые повторные испытания. Формула Бернулли .....
1.11. Наивероятнейшее число наступления события в схеме
Бернулли ....................................................................................
1.12. Формула Пуассона ....................................................................
1.13. Локальная и интегральная теоремы Муавра
я разгадал эту кодировку кстати.Так что, получается перепутали кодировки 1251 и 1252?
recode utf8..cp1252 | recode cp1251..utf8
И тогда вопрос, как в реестре прописать, чтобы винда вместо 1252 по дефолту все-таки использовала 1251?
Во-вторых, я в этой фразе
recode utf8..cp1252 | recode cp1251..utf8
не понял, что означают пары utf8..cp1252 и cp1251..utf8 (на том же сайте в качестве задания кодировок вручную предлагается одна кодировка для инпута и аутпута, а не пара)
В-третьих, и главных: то, что Вы распознали кодировки, может ли упростить вышеизложенные процедуры с распознавателями?
не понял, что означают пары utf8..cp1252 и cp1251..utf8Это означает, что текст был открыт в кодировке utf8, сохранен в cp1252. Потом открыли этот же файл, но в кодировке cp1251
например так:
cat original.txt | recode utf8..cp1252 | recode cp1251..utf8 > good.txt
под виндой последний шаг (cp1251..utf8 возможно, лишний.
cat и recode есть под винду, например в составе http://unxutils.sourceforge.net
как получить файл original.txt под виндой я не знаю. под линуксом у меня это получается двумя способами: в evince "выделить всё/копировать/вставить в vi" и pdftotext
возможно, есть аналоги под винду.
acroread под линуксом не копирует этот текст правильно
вот такая трансанальная микрохирургия
PDF - открытый формат, последний PDF reference весит около 30Мб и занимает около 1.5 тыс страниц
клац
cat original.txt | recode utf8..cp1252 | recode cp1251..utf8 > good.txtА почему не iconv?
cat original.txt | recode utf8..cp1252 | recode cp1251..utf8 > good.txtс дословно таким же синаксисом. пишет "прекращена работа recode" на выходе — нулевой файл. Поубирал некоторые | — вроде, выходные файлы какие-то образуются — но исходные и весят столько же.
Есть 2 вопроса
1) А что при этом делает программа cat, если перекодирует (теоретически) recode?
2) как выяснить точный синтаксис видового recode? (например, в интернете есть вариант utf-8 с дефисом и т.д.)
1) А что при этом делает программа cat, если перекодирует (теоретически) recode?просто выводит файл, по умолчанию на экран, но если используется палочка, то на вход следующей команде (конвейер типа). Под виндой можно попробовать type вместо cat или просто написать название файла как параметр первому recode.
2) как выяснить точный синтаксис видового recode? (например, в интернете есть вариант utf-8 с дефисом и т.д.)А recode -h ничего полезного не выводит? Вон, в никсовой версии recode -l выводит список поддерживаемых кодировок. Вообще, можешь просто выложить тут нужный файл, «мы» перекодируем.
замена счастию она
© Наше Всё™
программа cat выдаёт содержимое файлов на экран или в стандартный поток вывода.
например:
cat file1 file2 file3
распечатает на экран три файла.
cat file1 file2 file3 > file.out
сделает конкатенацию файлов - в файле file.out буду все три.
палка - это трубопровод. перенаправляет вывод одной программы на вход другой.
можно запустить recode следующим способом:
recode utf8..cp1252 file.txt
тогда она удалит файл file.txt и вместо него сделает перекодированный.
если вызывать recode без параметров, то она берёт то, что ей вводят на стандартный вход (≡ ввод с клавиатуры, если нет трубопровода переводит (FROM..TO) и выводит на стандартный вывод (≡ на экран, если нет трубопровода или >).
если recode встречает символы, которые она не может подставить в кодировку FROM, то она обламывается. можно её попросить не обламываться с помощью ключа --force
Ну ты прямо минихелп по командной строке выдал
на практике я применял
cat input.txt | recode --force utf8..cp1252 | recode --force cp1251..utf8 > good.txt
Все то же, прекращена работа, в ком. окошке пишется "инвалид аргумент"
То же для синонима -f
Сейчас еще попробую взять какой-нибудь хороший файл с известной кодировкой. Может, эта виндовая recode вообще не работает?
ну так что выдает recode -l?
CP1252/CR-LF 1252/CR-LF ms-ansi windows1252
UTF8 u8 и рядом, видимо, синонимы
Во всех вариантах пишется одно и то же
tmpfile : Invalid argument
Вообще, из интернета этот пакет unxutils был скачан сам по себе, распакован и далее эти экзешники я использовал без всяких инсталляций. Может, их в реестре нужно зарегистрировать (я в этом полный профан)?
А! tmpfile. Что-то я раньше не замечал это слово. ну тут хз, почему он там ему инвалид аргументы передает. Если бы там еще был strace
Там вместо recode FROM..TO надо писать iconv -f FROM -t TO
у тебя же штирлиц есть
штирлиц перекодирует только в windows1251, а не 1252, как написал
посоветуйте как перекодировать пдф файл 1252 на 1251 от сюда http://dbn.co.ua/load/normativy/dbn/b_2_2_12/1-1-0-1802
Оставить комментарий
RASA-2009
и из Адобе ридера, и из (крякнутого) Акробата 9.2 в первый раз при нажатии "копировать" выдается "произошла внутренняя ошибка". В следующие разы ничего не пишется — но и копируется с глюкамивыдает вместо текста
во всяких вордах-блокнотах — еще хуже, Штирлиц4 не декодирует.
вот пример файла:
Как-нибудь можно с этим бороться?