Hvis en PDF ser korrekt ud, men indsættelse i en almindelig teksteditor producerer forskellige tegn, skal du kontrollere årsagen, før du ændrer skrifttyper eller kører OCR. Kortlægningen mellem figuren tegnet på siden og det tegn, den repræsenterer, kan være forkert. At rette disse PDF-tekstfejl starter med at identificere, hvilken del af den proces, der mislykkedes.
Hvorfor kan tekst se rigtig ud, men kopiere forkert?
PDF tekstindhold kan gemme skrifttypespecifikke kildetegnkoder i stedet for Unicode-tekst. En PDF-læser bruger skrifttypen og kodningsoplysningerne til at lokalisere og tegne en glyf. Kopiering kræver også oversættelse af disse koder til meningsfulde tegn.
Tegning af bogstavet A garanterer derfor ikke, at ekstraktion vil returnere A. ToUnicode er en kortlægning i en skrifttypeordbog, der forbinder PDF-kildetegnkoder med Unicode-tegnsekvenser. Denne skelnen mellem at vise og udtrække tekst er beskrevet i Adobe PDF Reference, afsnit 5.9.

Hvad betyder fontmapping egentlig?
Disse tre begreber er relaterede, men de er ikke udskiftelige:
| Kortlægning | Hovedrolle |
|---|---|
cmap-tabellen inde i en skrifttypefil | Maps tegnkoder til glyph-indekser; Unicode-undertabeller bruger Unicode-koder |
| PDF Kodning; sammensatte skrifttyper kan bruge en Encoding CMap | Fortolker PDF kildetegnkoder og hjælper med at finde den glyf, der skal tegnes |
PDF ToUnicode | Maps PDF kildetegnkoder til Unicode tekst til kopiering og udtrækning |
For den første type, se OpenType cmap specifikation. Reparationen, der diskuteres her, retter sig mod den tredje; det genopbygger ikke skrifttypefilen eller erstatter glyfferne på siden.
En manglende ToUnicode-tilknytning forårsager ikke altid forvansket tekst. En PDF-læser kan nogle gange gendanne tekst fra en standardkodning, kendte glyfnavne eller en tegnsamling. Omvendt kan en kortlægningstabel eksistere og stadig indeholde forkerte tilknytninger.
Tjek først om kortlægningen er problemet
Kopier en kort passage ind i en almindelig teksteditor og sammenlign den med den originale side:
| Symptom | Hvad skal man tjekke først |
|---|---|
| Siden ser korrekt ud, men kopierede tegn bliver konsekvent til andre tegn | Manglende eller forkerte tegntilknytninger |
| Du kan kun vælge et billede, ikke tekst | Et manglende tekstlag eller tekst konverteret til konturer; overveje kildefilen eller OCR |
| Tekst kan vælges på en scannet side, men den stemmer ikke overens med billedet | Genkendelse resulterer i tekstlaget OCR |
| Individuelle tegn er korrekte, men kolonner eller tabeller er ude af rækkefølge | Læserækkefølge og layoutudtræk |
| Selve siden indeholder manglende tegn eller felter | Skrifttyperessourcer, glyfdækning eller displaykodning |
Disse er fejlfindingsspor, ikke diagnoser baseret på udseende alene. Indlejring af skrifttyper og korrekt kopiering er også separate problemer; se PDF skrifttypeindlejring og undersæt.
Hvordan kan du rette kopieret tekst ved hjælp af de originale glyffer?
Antag, at kildekoden <0001> i en bestemt skrifttype tegner A, men mapper forkert til 错 (U+9519). Dette er et illustrativt kortlægningsfragment, ikke en komplet CMap-fil:
Before: <0001> <9519>
After: <0001> <0041>
<0001> er en PDF-kildekode i den skrifttype, ikke Unicode-tegnet U+0001. Tilknytning af det til U+0041 angiver, at glyfen repræsenterer A. En ligature (flere bogstaver, der deler en glyf) skal muligvis også knyttes til flere Unicode-tegn, såsom fi.
Når du har bekræftet, at kortlægningsreparation er passende, skal du bruge PDF tekstreparationsværktøj:
- Vælg PDF, og vælg derefter den skrifttype, der skal rettes.
- Sammenlign de originale glyffer i gitteret, og indtast den korrekte tekst under hver glyf.
- Eksporter den reparerede PDF og behold originalen til sammenligning.
En ændring gælder overalt, hvor den samme skrifttype og kildekode bruges. Tjek forskellige skrifttyper separat, selv når deres navne matcher. Hvis OCR kun miskendte ét ord, kan global omlægning af et tegn også skade tekst, der allerede var korrekt.
Hvordan verificerer du reparationen?
Genåbn den eksporterede fil, og kopier og søg efter eksempeltekst i din mål-PDF-læser. Kontroller andre forekomster af den samme kode og skrifttyper, som du ikke har redigeret. Sammenlign sidens udseende og undersøg tegnsætning, ligaturer og tal i stedet for kun at teste det første forkerte tegn.
Nogle PDF'er bruger også ActualText til at levere erstatningstekst, hvilket understøttende software måske foretrækker. Hvis ændring af ToUnicode ikke løser problemet, skal du kontrollere for denne tilsidesættelse. Det aktuelle værktøj advarer om ActualText, men redigerer det ikke. Se PDF Association forklaring.
For OCR-fejl skal du rette eller genkende tekstlaget igen. Hvis du har den originale layoutfil, kan du overveje at rette den og eksportere en ny PDF. Filer, der ikke vil åbne eller udløse strukturelle fejl, har brug for en anden tilgang; se når PDF format reparation er passende.
Når du har identificeret et skrifttypekaraktertilknytningsproblem, skal du rette det med lokalt PDF tekstreparationsværktøj. Filer behandles i din browser uden at uploade dem. Du bør stadig bekræfte den kopierede tekst og sideudseende efter eksport.


