BookTranslator
BookTranslator

Как да коригирате пренасянето на редове и сричкопренасянето при OCR преди превод

Поправете пренесения OCR текст, без да изтривате истински тирета, абзаци, списъци или стихове. Използвайте обратим работен процес и дванадесет примера за изчистване, достъпни за изтегляне.

За да коригирате пренасянето на редове при OCR, първо идентифицирайте текста, който принадлежи към един абзац. Заменете с интервали само нежеланите прекъсвания на редове в него. За дума, разделена между редове, преценете индивидуално дали да премахнете тирето, или да го запазите: trans- , последвано от lation , става translation, но well- , последвано от known , става well-known. Поддържайте дневник на промените и сравнявайте несигурните съединявания с оригиналната страница.

Не прилагайте „премахване на всички нови редове“ или „изтриване на всички тирета“ върху цяла книга. Изчистеният откъс може да изглежда по-гладък, но същевременно да изгуби абзац, да обедини два елемента от списък или да промени технически идентификатор. Целта е надеждно копие за четене или превод, а не възможно най-малък брой знаци за нов ред.

Това ръководство започва след разпознаването на текста. Ако копирането от PDF води до грешни букви или цифри, първо диагностицирайте неговия текстов слой. Промяната на прекъсванията на редове не може да превърне неправилно разпознатото B-2O4 в желаното B-204.

Определете какво представлява всяко прекъсване на ред

Запазете оригиналното сканиране и необработения извлечен текст непроменени. В работното копие включете показването на интервалите или знаците за абзац в текстовия редактор. Променете размера на прозореца на редактора: ред, който се пренарежда без съхранен знак за нов ред, просто се пренася визуално на екрана; там няма нищо за триене.

Съхранените нови редове изискват друга проверка. Сравнете един цялостен абзац, заглавие, списък и всяко различно оформление на страница с изображението на оригинала. Не съдете за структурата на целия документ само по заглавната му страница.

Какво представлява прекъсванетоПодходящо действиеНеобходими индикатори
Визуално пренасяне между думи в рамките на един абзацЗаменете запазения пренос на ред с един интервалИ двата реда принадлежат към един и същ абзац в оригинала
Разделяне вътре в една думаСъединете фрагментите, като обикновено премахвате тирето за преносПредвиденият правопис, контекстът на оригинала и специфичните езикови правила
Пренасяне след истинско дефис в сложна думаПремахнете преноса на ред, запазете тиретоДумата запазва това тире независимо от форматирането в края на реда
Граница на абзац, заглавие, елемент от списък или стихЗапазете границатаСтруктурата на оригинала, а не само пунктуацията на изречението
Преход между колони или страници с неясен редОставете го нерешен и прегледайте страницатаЛогическа последователност, ред на колоните, надписи и бележки под линия

Празните редове и отстъпите могат да помогнат за откриването на абзаци, но те са по-скоро подсказки, а не гаранция. След заглавие може да няма празен ред. Ред с отстъп може да е продължение на списък, а не нов абзац. Кратък ред, завършващ с точка, може да е както последният ред на абзац, така и изречение по средата му.

Ако експортираните от OCR данни предоставят информация за оформлението или блоковете, запазете я, докато проверявате текста. Експортирането само като обикновен текст може да премахне точно доказателствата, от които се нуждаете за възстановяване на тези граници.

Разграничаване на разделени думи от истински дефиси

Три визуално сходни случая изискват различни корекции:

trans-          → translation
lation

well-           → well-known
known

trans\u00ADlation → translation in a verified reading copy

Последният ред използва \u00AD , за да направи видим иначе трудно забележим символ. Unicode прави разлика между U+00AD SOFT HYPHEN— маркер за условен вътрешнословен пренос, и видимо тире като U+2010 HYPHEN. Това не са взаимозаменяеми символи. Спецификацията на Unicode за пренасяне на редове описва и правописни промени при пренасяне, зависещи от езика; изтриването на видимо тире и сливането на буквите невинаги е достатъчно.

За обикновен текст премахването на проверен маркер за меко тире може да създаде удобно за четене копие. При архивно транскрибиране запазете оригинала отделно: премахването на маркер променя кодирания текст, дори ако думата визуално изглежда непроменена.

Използвайте речник на изходния език , за да проверите предполагаемия правопис, след което се върнете към откъса. Речниковата статия е потвърждаващо доказателство, а не разрешение за пренаписване на име, идентификатор или исторически правопис. Повтарящите се срещания в документа също помагат, но дадена OCR грешка може да се повтаря съвсем последователно.

Например нашият примерен текст на немски е:

Die Auf-
gabe ist klar.

Търсената дума в този съставен пример е Aufgabe; статията в Duden посочва нейното делене като Auf|ga|be. Сливането на Auf- и gabe тук е оправдано. Този единичен пример обаче не представлява общо правило за премахване на тирета в немския език, а съвременният речников правопис не бива тихомълком да замества правописа от по-старо издание.

Разглеждайте URL адресите, каталожните кодове, химичните наименования, отрицателните стойности и други технически единици като отделни случаи за преглед. Дали дадено тире или дефис ще остане, трябва да зависи от източника и значението на лексикалната единица, а не от евристика за английски думи.

Какво показват дванадесет контролирани примера

Създадохме демонстрационен файл за изчистване, достъпен за изтегляне , съдържащ дванадесет оригинални низа. Техните предвидени думи и структура бяха предварително дефинирани при съставянето им; след това умишлено вмъкнахме избрани прекъсвания на редове и дефекти при пренасянето. Това са синтетични текстови примери, а не резултат от OCR софтуер или сканирани страници от книга.

Умишлено опростеният базов подход извършва три замени: премахва тирето заедно с новия ред, заменя останалите нови редове с интервали и премахва меките тирета. Вторият подход прилага само индивидуално одобрени промени върху точния текст. Той не прави опити за автоматично разпознаване на абзаци или определяне на правописа на думите.

ПримерОпростен базов подходОдобрено решение
Пренасяне на английски текстПравилно съединява двата редаЗаменете потвърдения пренос с интервал
trans- / lationПравилно дава като резултат translationПремахнете добавеното тире и прехода на нов ред
well- / knownДава като резултат wellknownЗапазете истинското дефисче
Немски Auf- / gabeПравилно дава като резултат AufgabeСъединете само този потвърден правопис
Вграден U+00ADПремахва знака за меко тиреПремахнете го в това авторско копие за четене
Френско многоточие, последвано от нов абзацСлива абзацитеЗапазете границата, зададена от автора
Номериран списък, стих, код и заглавиеИзравнява отделни структуриЗапазете новите им редове
Два абзаца без празен ред между тяхОбединява ги в единЗапазете авторските абзаци
Непрегледан маркер за страницаЗаличава прехода между страницитеОставете го непроменен, докато редът не бъде проверен

На 3 октомври 2026 г. изпълнението на тестовия набор с Node.js 25.2.1 генерира съвпадащ с еталона текст за 4 от 12 примера при директния базов подход. Одобреният работен процес съвпадна с всички дванадесет еталона и възстанови всички дванадесет изходни текста чрез отмяна. Той също така отхвърли остарели входни данни, нееднозначни съвпадения и липсващи съвпадения.

Тези резултати тестват точното прилагане на корекциите спрямо известни авторски еталони. Те не оценяват точността в реални условия: одобрените решения вече съдържат отговорите, а корпусът беше съзнателно подбран така, че да разкрие проблемни случаи. Не сме тествали комерсиален инструмент за изчистване, OCR енджин, модел за превод или качване в BookTranslator. Нямаше повторни опити или изключени мостри.

Изтеглете действителните входящи/изходящи данни и дневника с корекции и инструкциите за възпроизвеждане. JavaScript кодът се изпълнява локално без външни зависимости или мрежови заявки и отпечатва резултатите; той не презаписва вашите файлове. Неговите проверки защитават дадена одобрена редакция от прилагане върху различен текст. Те обаче не могат да определят дали дадена редакция е лингвистично правилна.

Изчиствайте по един проверен блок наведнъж

Започнете с кратък прозаичен блок, чийто ред на четене и граници на абзаците можете лесно да установите. Не започвайте с цяла глава, съдържаща надписи към изображения, цитати, списъци и бележки под линия.

  1. Запазете необработено копие и отбележете местоположението на източника. Запазете името на файла, номера на страницата, абзаца или блока, както и езика за всеки прегледан пасаж.
  2. Първо маркирайте структурните граници. Отделете заглавията, елементите на списъци, стиховете, таблиците и програмния код от обикновения текст. Запазете препратките към страници извън основния текст за четене, ако по-късно премахнете техните маркери.
  3. Свържете стандартните междусловни пренасяния в рамките на този блок. Заменете всеки потвърден нов ред с интервал. Проверете думите да не са се слели и дали съществуващ интервал не се е превърнал в излишен дубликат.
  4. Преглеждайте разделенията на думи поотделно. Вижте цялата дума и заобикалящото изречение. Отбележете „премахни тирето за пренасяне“, „запази истинското тире“ или „нерешено“. Не третирайте нерешен случай като одобрена промяна.
  5. Прегледайте разликите (diff), преди да ги приемете. Сравнете всяка премахната граница или тире с оригинала. Запазете изчистената версия под ново име на файл, заедно с взетите решения.
  6. Отворете отново и копирайте от запазения резултат. Проверете действителния файл, който ще използвате, а не само предварителния преглед в редактора.

За малък откъс ръчните корекции с проследяване на промените или сравнението тип „преди/след“ може да са достатъчни. За по-дълъг откъс списъкът с корекции (patch list) трябва да записва точния оригинален подниз, замяната, местоположението, причината и преглеждащия. Контролната сума на източника помага да се предотврати прилагането на стари одобрения след промяна на входящите данни.

Ако вашият редактор предлага режим на изчистване със запазване на абзаците, тествайте го върху трудните блокове, а не само върху плавен текст. Запазването на двойните нови редове няма да възстанови границата на абзаца, която OCR е пресъздал с един-единствен нов ред. Не изтривайте отстъпите и не свивайте всички интервали, преди да сте проверили таблиците и програмния код.

Преценете кога да се върнете към сканираното изображение на страницата

Френската пунктуация показва ясно защо откриването на край на изречение не означава откриване на абзац. В нашия примерен текст Il attend… и Le lendemain, il part. принадлежат към отделни абзаци. Самото многоточие не установява тази граница. Указанията на Office québécois de la langue française относно многоточието (points de suspension) описват употреби, включващи прекъсване или недовършена мисъл; използвайте структурата на страницата, за да решите дали да присъедините следващия ред.

Направете прегледа на оригиналното изображение задължителен за следните случаи:

СлучайЗащо само текстът не е достатъченКакво да сравните
Заглавие, непосредствено следвано от текстПри извличането може да не е оцелял празен редШрифт, подравняване, отстояния и роля в раздела
Пасаж, преминаващ през страница или колонаМоже да бъде прекъснат от горен колонтитул, надпис под фигура или бележка под линияПоследен изходен ред, продължение и ред на четене
Име, код, количество или непознат терминЕдно наглед логично сливане пак може да промени стойносттаВсеки отделен знак, включително вида на тирето и цифрите
Пренасяне в исторически езикПравописът при отпечатано пренасяне може да се различава от цялата думаИздание, изходен правопис и подходящ езиков справочник
Стихове, списъци, таблици или програмен кодКраят на реда може да носи смисъл или структураРазпределение на редовете, граници между елементите, клетки и отстъпи
Многоточие, съкращение или кратък финален редПунктуацията не доказва позицията на абзацаЦелият абзац и съседните му блокове

Ако няколко страници показват един и същ проблем, потърсете този шаблон в целия документ и прегледайте съвпаденията. Ако изходните букви, редът на четене или цели пасажи са сгрешени, спрете нормализирането и преразгледайте разпознаването или извличането. За разпознаване на няколко езика използвайте отделния работен процес за OCR на многоезични PDF файлове.

Проверете изчистения изходен текст преди превод

Сравнете редактиран блок с оригиналната страница, след което проверете различен блок и всеки различен структурен тип, присъстващ в извлечения текст. Запазете известните проблемни места в набора за преглед. Извадковата проверка дава представа за прегледаните пасажи, но не гарантира качеството на останалата част от книгата.

  • Уверете се, че имената, числата, датите и кодовете все още съвпадат с оригинала.
  • Проверете всяко премахнато тире за пренасяне и всеки правопис, възстановен през нов ред.
  • Сравнете границите на абзаците, заглавията, елементите на списъци и поетичните редове.
  • Уверете се, че първите и последните редове са запазени при прехода между страниците.
  • Потърсете нерешени спорни случаи и ги запазете видими в регистъра за преглед.
  • Уверете се, че окончателно запазената версия е точно тази, която ще бъде подадена към следващия етап от работния процес.

Ако ви е бил нужен само текст с възможност за търсене или бележки, този проверен откъс може да бъде крайният резултат. Не ви е необходим превод, за да го поправите.

Ако документът ви трябва на друг език, подгответе провереното съдържание в поддържан формат и използвайте работния процес за цялостен превод на документи. Режимът OCR на BookTranslator изгражда наново преведен PDF файл от разпознатото съдържание, вместо да възпроизвежда оригиналното оформление на страницата; той не представлява външен редактор за изчистване на текст или доказателство, че всяко пренасяне в оригинала е разтълкувано правилно. Ръководството за сканирани PDF файлове обяснява кога е необходимо разпознаване.

Запазете оригиналните страници и дневника с корекции за финалната проверка на качеството при превод на PDF. Едно гладко преведено изречение на целевия език не може да ви подскаже дали в оригинала е трябвало да има истинско тире за пренос — или че две наглед непрекъснати изречения всъщност са били отделни абзаци.

Свързани публикации