Ако PDF изглежда правилно, но поставянето в редактор на обикновен текст произвежда различни знаци, проверете причината, преди да промените шрифтовете или да стартирате OCR. Съпоставянето между формата, начертана на страницата, и символа, който представлява, може да е грешно. Коригирането на тези PDF текстови грешки започва с идентифициране коя част от този процес е неуспешна.
Защо текстът може да изглежда добре, но да се копира неправилно?
Текстовото съдържание на PDF може да съхранява кодове на изходни символи, специфични за шрифта, вместо текст Unicode. PDF четец използва шрифта и информацията за кодиране, за да намери и начертае глиф. Копирането също така изисква превод на тези кодове в смислени знаци.
Следователно рисуването на буквата A не гарантира, че извличането ще върне A. ToUnicode е съпоставяне в речник на шрифтове, което свързва PDF изходните символни кодове с Unicode последователности от знаци. Това разграничение между показване и извличане на текст е описано в Справка за Adobe PDF, раздел 5.9.

Какво всъщност означава картографиране на шрифтове?
Тези три понятия са свързани, но не са взаимозаменяеми:
| Картографиране | Главна роля |
|---|---|
Таблицата cmap във файл с шрифтове | Картографира кодовете на знаците към индексите на глифове; Unicode подтаблиците използват Unicode кодове |
| PDF Кодиране; съставните шрифтове могат да използват Encoding CMap | Интерпретира PDF кодовете на изходните символи и помага да се намери глифът за рисуване |
PDF ToUnicode | Картографира PDF изходните символни кодове към Unicode текст за копиране и извличане |
За първия вид вижте OpenType cmap спецификация. Обсъжданият тук ремонт е насочен към третото; не възстановява файла с шрифтове или замества глифовете на страницата.
Липсващо съпоставяне на ToUnicode не винаги причинява изкривен текст. Четец на PDF понякога може да възстанови текст от стандартно кодиране, известни имена на глифове или колекция от знаци. Обратно, таблица за съпоставяне може да съществува и все още да съдържа неправилни асоциации.
Първо проверете дали картографирането е проблемът
Копирайте кратък пасаж в редактор на обикновен текст и го сравнете с оригиналната страница:
| Симптом | Какво да проверите първо |
|---|---|
| Страницата изглежда правилна, но копираните знаци постоянно се превръщат в други знаци | Липсващи или неправилни съпоставяния на знаци |
| Можете да изберете само изображение, но не и текст | Липсващ текстов слой или текст, преобразуван в контури; разгледайте изходния файл или OCR |
| Текстът може да бъде избран на сканирана страница, но не съвпада с изображението | Разпознаването води до текстовия слой OCR |
| Отделните знаци са правилни, но колоните или таблиците не са в ред | Ред на четене и извличане на оформление |
| Самата страница съдържа липсващи знаци или полета | Ресурси на шрифтове, покритие на глифове или кодиране на дисплея |
Това са улики за отстраняване на неизправности, а не диагнози, базирани само на външен вид. Вграждането на шрифтове и правилното копиране също са отделни проблеми; вижте PDF вграждане на шрифтове и подмножества.
Как можете да коригирате копиран текст, като използвате оригиналните глифове?
Да предположим, че изходният код <0001> в определен шрифт рисува A, но неправилно се съпоставя към 错 (U+9519). Това е илюстративен фрагмент от картографиране, а не пълен CMap файл:
Before: <0001> <9519>
After: <0001> <0041>
<0001> е изходен код на PDF в този шрифт, а не знакът Unicode U+0001. Съпоставянето му на U+0041 указва, че глифът представлява A. ligature (няколко букви, споделящи един глиф) може също да се наложи да се съпостави с няколко Unicode знака, като fi.
След като потвърдите, че поправката на картографиране е подходяща, използвайте PDF инструмент за поправка на текст:
- Изберете PDF, след което изберете шрифта за коригиране.
- Сравнете оригиналните глифове в мрежата и въведете правилния текст под всеки глиф.
- Експортирайте ремонтирания PDF и запазете оригинала за сравнение.
Промяната се прилага навсякъде, където се използват един и същ шрифт и изходен код. Проверете отделните шрифтове поотделно, дори когато имената им съвпадат. Ако OCR е разпознал погрешно само една дума, глобалното пренасочване на знак може също да повреди текст, който вече е правилен.
Как проверявате ремонта?
Отворете отново експортирания файл и копирайте и потърсете примерен текст във вашия целеви PDF четец. Проверете други случаи на същия код и шрифтове, които не сте редактирали. Сравнете външния вид на страницата и проверете пунктуацията, лигатурите и числата, вместо да тествате само първия неправилен знак.
Някои PDF файлове също използват ActualText за предоставяне на заместващ текст, който поддържащият софтуер може да предпочете. Ако промяната на ToUnicode не разреши проблема, проверете за това заместване. Текущият инструмент предупреждава за ActualText, но не го редактира. Вижте PDF Обяснение на асоциацията.
За OCR грешки коригирайте или разпознайте текстовия слой отново. Ако имате оригиналния файл с оформлението, помислете дали да го коригирате и да експортирате нов PDF. Файловете, които не се отварят или предизвикват структурни грешки, се нуждаят от различен подход; вижте когато ремонтът на формат PDF е подходящ.
След като идентифицирате проблем със съпоставянето на символите на шрифта, коригирайте го с локален инструмент за поправка на текст PDF. Файловете се обработват във вашия браузър, без да се качват. Все пак трябва да проверите копирания текст и външния вид на страницата след експортиране.


