Geen upload, 100% lokaal, geen account

Artikel

Waarom je uit sommige PDF's geen tekst kunt kopiëren

Probeer een regel in de ene PDF te selecteren en de woorden lichten normaal op, klaar om te kopiëren. Probeer hetzelfde gebaar in een andere PDF en er gebeurt niets, of de cursor pakt de hele pagina als een foto, omdat dat precies is wat het is. Twee bestanden die identiek lijken op het scherm kunnen er onderin compleet anders zijn opgebouwd. Dit is hoe je herkent welk type je hebt, en wat je doet met het type dat weerstand biedt bij het kopiëren.

Twee verschillende soorten PDF-pagina's

Een PDF kan een pagina op twee heel verschillende manieren opslaan. In een tekstgebaseerde PDF is elke letter een tekenobject met een Unicode-waarde, een lettertype en een positie, op dezelfde manier als een webpagina tekst opslaat: een viewer kan haar selecteren, doorzoeken, en een schermlezer kan haar voorlezen. In een afbeeldingsgebaseerde PDF is de pagina één platte afbeelding, vaak geproduceerd door een scanner, een fax, of een "afdrukken naar PDF"-stap toegepast op een foto van een document. De letters zien er voor je ogen hetzelfde uit, maar voor het bestandsformaat is er geen teken eronder, alleen pixels.

Vergelijking naast elkaar: een tekstgebaseerde PDF-pagina met een gemarkeerde, selecteerbare tekstregel naast een afbeeldingsgebaseerde PDF-pagina waar dezelfde tekst er hetzelfde uitziet maar één platte afbeelding is zonder selectie.

Een snelle manier om te zien welk type je hebt

Druk op Ctrl+F of Cmd+F en zoek naar een woord dat je duidelijk op de pagina ziet. Vindt de zoekopdracht het en markeert het, dan heeft de pagina een echte tekstlaag. Vindt de zoekopdracht nergens iets in het document, dan is de pagina een afbeelding, hoe scherp of hoe getypt hij er ook uitziet. Slepen met de muis om een regel te selecteren geeft hetzelfde antwoord: een markering versus een gewone rechthoekige selectie.

De tekst reconstrueren met OCR

Optische tekenherkenning (OCR) leest de pixels van een afbeeldingsgebaseerde pagina en vergelijkt de vormen met een getraind model van letters voor een bepaalde taal, en bouwt dan een tekstlaag op met de herkende tekens gepositioneerd waar ze verschenen. Een tool zoals ocr doet dit volledig in de browser: er wordt niets geüpload, en de uitvoer is een plat tekstbestand dat je kunt doorzoeken, kopiëren of bewerken. De nauwkeurigheid hangt af van de bron: een schone, rechte scan met hoge resolutie in een goed ondersteunde taal wordt betrouwbaar herkend, terwijl een scheve, wazige, contrastarme of handgeschreven pagina meer fouten oplevert, soms een verkeerd teken of een verkeerd gelezen woord.

Pijplijndiagram: pixels van een gescande pagina gaan door OCR-tekenherkenning en komen eruit als een gereconstrueerde, gepositioneerde tekstlaag.

Als het bestand al tekst heeft maar de extractie er verkeerd uitziet

Als je PDF wel een echte tekstlaag heeft maar een tool zoals pdf-naar-tekst tekst in een vreemde volgorde produceert, met samengevoegde kolommen of ingestorte spaties, dan is dat een ander, ongerelateerd probleem: de tekstobjecten bestaan wel, maar hun leesvolgorde op de pagina was niet opgeslagen zoals een script van nature verwacht. Dat is een layout-eigenaardigheid om na extractie op te schonen, geen teken dat de tekst ontbreekt, en het heeft geen OCR nodig om te repareren.

Tools in dit artikel

Veelgestelde vragen

Mijn PDF ziet eruit als een normaal getypt document maar ik kan nog steeds geen tekst selecteren. Waarom?

Het is hoogstwaarschijnlijk een gescande of gefotografeerde pagina die als PDF is opgeslagen, of een document dat met opzet is platgeslagen tot een afbeelding. Visueel kan het niet te onderscheiden zijn van een tekstgebaseerde PDF; het verschil komt alleen naar boven als je haar probeert te doorzoeken of te selecteren. Ze door OCR halen bouwt een echte, selecteerbare tekstlaag op vanuit de pixels.

Werkt OCR even goed in elke taal?

Nee. De nauwkeurigheid hangt af van of er een getraind model bestaat voor die taal en dat schrift, en van de kwaliteit van de scan. Goed ondersteunde talen op een schone, rechte scan worden betrouwbaar herkend; handschrift, afbeeldingen met lage resolutie, of talen met minder trainingsdata leveren meer fouten op. OCR-uitvoer is altijd een best-effort transcriptie, het waard om even te controleren voordat je erop vertrouwt.

Bronnen