Handleidingen
· 5 min leestijd

Een gescande pdf zwartlakken als uw software niets vindt

Door Amine Gaaliche · concept opgesteld met Claude, met de hand nagekeken en geredigeerd

Een gescande pdf is een afbeelding en geen tekst. Software die alleen tekst leest, vindt er geen enkele naam in en meldt dat alles schoon is. Om een scan zwart te lakken, moet de software de woorden herkennen, hun plek bepalen en die pixels overschrijven.

Wat de scanner aflevert

In een pdf uit Word staan de letters als tekst, dus u kunt erin zoeken. Een pdf uit een scanner bevat per pagina één afbeelding. Wat u als ‘Jansen’ leest, is voor de computer een verzameling pixels zonder betekenis.

Sommige scanners voegen zelf een onzichtbare tekstlaag toe. Die laag is niet beter dan de herkenning van dat ene apparaat. Op een scheve kopie of een vage fax klopt ze zelden.

Een fout zonder melding

De meeste fouten in dit soort software vallen op, zoals een foutmelding of een datum die onnodig is zwartgelakt. Bij een scan in een hulpmiddel dat alleen tekst leest, gaat het anders: nul vondsten op twaalf pagina's vol namen, BSN's en geboortedata. Die uitkomst lijkt op wat u hoopte, dus niemand zoekt verder. Het komt pas aan het licht als een ontvanger de naam leest die volgens uw software niet bestond.

Ook Adobe en Presidio maken er een aparte stap van

Adobe legt uit dat een gescande pdf in Acrobat pas doorzoekbaar en bewerkbaar wordt nadat u Tekst herkennen hebt uitgevoerd. Dat betekent wel dat de gebruiker die stap zelf moet onthouden. Wie hem overslaat, zoekt in een document zonder tekst.

Presidio maakt dezelfde scheiding. Het zwartlakken van afbeeldingen is een apart onderdeel naast de tekstanalyse, met een eigen installatie. Dat past bij het probleem: een afbeelding is andere invoer dan tekst. Wie Presidio met alleen de tekstanalyse op scans loslaat, krijgt ook nul vondsten.

Waarom dit onder de AVG belangrijk is

Juist de gevoeligste stukken zijn vaak scans: het getekende exemplaar, de kopie van een identiteitsbewijs, het verslag van de bedrijfsarts. De UAVG staat gebruik van het BSN alleen toe ter uitvoering van een wet. De Rijksoverheid adviseert om op kopieën van identiteitsbewijzen het BSN en de pasfoto af te schermen.

Wie scans voor tekstherkenning naar een clouddienst stuurt, schakelt een verwerker in, en artikel 28 AVG vraagt dan om een verwerkersovereenkomst. Bij een medisch dossier gaat het om bijzondere persoonsgegevens, en voor advocaten speelt ook het beroepsgeheim. promptShield doet de tekstherkenning op uw eigen computer, zonder verwerker.

Wat het zwartlakken van een scan vraagt

Er zijn vier stappen, en elk kan mislukken zonder melding.

  1. De pagina als beeld lezen. promptShield zet elke gescande pagina om in een afbeelding van 300 dpi. Bij een lagere resolutie gaan kleine cijfers in een IBAN of geboortedatum als eerste verloren.
  2. De woorden herkennen. Tesseract, de opensourcesoftware die wij gebruiken, bepaalt de indeling van de pagina en leest in de taal van het document plus Engels.
  3. Bepalen waar ze staan. De persoonsgegevens worden vastgelegd als gebieden op de afbeelding.
  4. De pixels overschrijven. De pixels in elk gebied worden vervangen. Daaronder komt een nieuwe, doorzoekbare tekstlaag zonder de zwartgelakte waarden.

Vaak wordt een naam alleen bedekt en niet overschreven. Een zwarte rechthoek over een pagina is een los object in de pdf. Wie die verwijdert, ziet de naam weer. Voor tekst-pdf's geldt hetzelfde; daarover schreven we apart.

Een pdf bevat ook tekst die u niet ziet: toegankelijkheidstekst, metadata, formuliervelden en benoemde bestemmingen. Bij het exporteren vervangt promptShield de waarde ook daar. Een miniatuur die vóór het zwartlakken is gemaakt, laat zich niet doorzoeken en wordt daarom verwijderd.

Moet een waarde later terug, kies dan Coderen. De waarde wordt een code met een letter voor het soort gegeven, zoals [P0ABCD], en de lengte volgt het origineel met een minimum van zes tekens. Het Coderegister bewaart de koppeling per map op uw computer, zonder versleuteling. Hoe die omkeerbare kant werkt, leest u elders.

Onze eigen grens: de taal

De tekstherkenning staat of valt met het taalpakket. Er worden er acht meegeleverd: Engels, Frans, Duits, Spaans, Italiaans, Nederlands, Portugees en Pools. Een scan in het Tsjechisch of Turks wordt gelezen door een model dat die taal niet kent.

Het resultaat is dan zelden leeg. Het oogt geloofwaardig en klopt niet: namen met een letter te veel, cijfers op de verkeerde plek. Dat is erger dan een lege uitkomst, omdat het op een geslaagde herkenning lijkt. Stel daarom de documenttaal goed in, en kijk scans in andere talen en handschrift extra zorgvuldig na.

Waarom u het resultaat nakijkt

Detecteren werkt in lagen. Patronen zoeken gegevens met een vaste vorm, zoals een BSN of IBAN. Een herkenningsmodel zoekt namen, organisaties en adressen. Diepteanalyse is een optionele derde laag en staat standaard uit.

De uitkomsten worden samengevoegd, ontdubbeld en over de pagina's doorgetrokken, zodat een naam van pagina één ook op pagina vier wordt gemarkeerd. Daarna haalt een filter de ruis weg. Geen van die lagen is volledig, dus u kunt een bestand pas downloaden nadat de gebieden in Beoordelen zijn nagekeken.

De desktopapp doet dit op uw eigen computer en kan volledig offline werken. Pro kent ook een stand zonder licentiecontrole en foutrapportage. De gratis browserversie houdt het document eveneens op uw computer, maar meldt anoniem dat de app is gestart.

Veelgestelde vragen

Waarom vond mijn software niets in een gescande pdf?

Omdat er voor dat programma niets te lezen was. Zonder tekstherkenning is nul vondsten de enige mogelijke uitkomst. Gebruik software die de pagina zelf leest, en kijk het resultaat na.

Is een zwartgelakte scan nog doorzoekbaar?

Ja. promptShield bouwt onder de overschreven pixels een nieuwe tekstlaag op, zonder de zwartgelakte waarden. Hebt u gecodeerd, dan staat de code erin.

Kan de verwijderde tekst nog worden teruggehaald?

Na Zwartlakken niet: de pixels zijn overschreven en ook metadata en formuliervelden zijn vervangen. Na Coderen wel, met Decoderen op de computer waar het Coderegister staat. Ligt er alleen een losse rechthoek over de scan, dan staat de naam er vaak nog onder.

Maakt de ingestelde taal uit voor de tekstherkenning?

Ja. De herkenning leest in de documenttaal plus Engels. Een scan in een andere taal oogt plausibel maar klopt niet, dus kijk die extra zorgvuldig na.

Was dit nuttig? Laat het ons weten.

Delen