Anonymisere PDF rigtigt: en sort kasse er ikke nok
Anonymisere PDF trin for trin: UniteDocs finder navne, CPR-numre og adresser og sletter teksten under den sorte bjælke. Og det, du selv skal tjekke, før filen sendes videre.

Skal du anonymisere en PDF, er det ikke nok at tegne en sort kasse over navnet. I de fleste programmer ligger teksten stadig under kassen, og modtageren kan markere den, kopiere den eller finde den med Ctrl+F. Oplysningen er først væk, når selve teksten slettes fra filen. Det gør UniteDocs, når du gemmer — og før det finder programmet selv CPR-numre, navne, adresser, telefonnumre og kontonumre i hele bunken, også på de scannede sider.
Situationen kender de fleste, der arbejder med sager. En afgørelse skal bruges som eksempel på et TR-kursus, eller et bilag skal sendes videre til en kollega i en anden afdeling. Bundtet er på 40 sider: stævning, svarskrift og en stak lønsedler som bilag, og halvdelen er scannet. Medlemmets navn, CPR-nummer og adresse skal væk. Advokatens og dommerens navne må gerne blive stående — de er en del af sagen.
Herunder gennemgår jeg, hvordan man gør det i UniteDocs, hvad programmet finder og ikke finder, og hvad du selv skal tjekke, før filen forlader huset. Hvorfor en sort boks i Acrobat ikke skjuler noget, har jeg skrevet om i historien om lønsedlerne, der blev printet og scannet igen. Den her artikel er selve guiden.
Kort svar: sådan anonymiserer du en PDF
- Læg alle sagens filer ind — PDF'er, scanninger og billeder.
- Tryk »Anonymiser« og lad fluebenet ved scannede sider blive stående.
- Gennemgå fundene. Alt er valgt på forhånd. Fjern fluebenet ved det, der skal blive stående.
- Kig siderne igennem, og maskér det, programmet har overset.
- Gem som PDF. Først nu slettes teksten under de sorte bjælker.
- Kontrollér den gemte fil — søg efter navnet, og prøv at markere teksten.
Sådan anonymiserer du en PDF i UniteDocs — trin for trin
UniteDocs er et gratis program til Windows 10 og 11. Det kører på din egen pc, så filerne bliver ikke sendt nogen steder hen. Anonymiseringen kom med i version 9.1.0. Sprogmodellerne, som den bruger til at finde navne, er valgt til som standard, når du installerer. Har nogen fravalgt dem, er knappen grå.
1. Læg sagens filer ind
Klik på »Tilføj filer«, eller træk filerne ind i vinduet. Du kan blande PDF'er og billedfiler (fx fotos af et brev). Er en fil beskyttet med kodeord, skal du låse den op. Ellers kan programmet ikke læse den.
Læg hele bunken ind på én gang. Programmet samler fundene på tværs af alle filerne. Fravælger du advokatens navn én gang, gælder det altså på alle siderne i alle filerne.
2. Tryk »Anonymiser«
Knappen står i kommandobaren øverst. Der kommer en lille dialog, »Automatisk anonymisering«, med ét valg: »Læs også scannede sider (tekstgenkendelse)«. Lad fluebenet stå. Tekstgenkendelse betyder, at programmet læser bogstaverne på et billede af papir. Uden den kan en scannet side ikke gennemsøges, og så bliver der ikke fundet noget som helst på den. Tryk »Start«.
Første gang står der »Indlæser sprogmodel…« i nogle sekunder. Derefter tæller programmet siderne op, med filnavn og sidetal. Er siderne scannede, tager det længere tid, fordi hver side skal læses. Du kan afbryde undervejs, men så skriver gennemgangen bagefter, at listen ikke er komplet.
3. Gennemgå fundene
Når programmet er færdigt, åbner gennemgangen. Øverst står, hvor mange forekomster programmet har fundet, fordelt på hvor mange forskellige værdier, og under det: »Alt er valgt. Fjern fluebenet ved det der IKKE skal maskeres — fx advokatens eller dommerens navn.«

Listen har fem kolonner: Værdi, Type, Rolle, Antal og Eksempel. Tre ting gør den hurtigere at komme igennem, end antallet antyder:
- Fundene er samlet pr. værdi. Står det samme navn på tyve sider, er det én linje med antallet ved siden af. Programmet ser også, at »010190-1234« og »0101901234« er det samme CPR-nummer, og at »Advokat Anne Hansen« og »Anne Hansen« er den samme person. Ét flueben dækker dem alle.
- Rolle-kolonnen viser, hvad der stod lige foran navnet — »advokat«, »dommer«, »sagsbehandler«, »sagsøgte«, »tiltalte«, »vidnet« og lignende. Navne med en professionel rolle står øverst under »Navn«, for det er dem, du skal tage stilling til. Står det samme navn ved forskellige roller i dokumentet, viser kolonnen »blandet«, og linjen foldes ud, så du kan se forekomsterne hver for sig. Rollen er kun et hint. Programmet fravælger aldrig noget af sig selv.
- Du kan søge og hoppe. Feltet »Filtrér:« søger i både værdierne og eksempelteksten. Folder du en linje ud og dobbeltklikker på en enkelt forekomst, hopper sidevisningen hen til siden, så du kan se, hvor den står.
Nederst står, hvor mange forekomster der bliver maskeret, og der er knapper til »Vælg alle« og »Fravælg alle«. Når listen ser rigtig ud, trykker du på »Masker de valgte«. Statuslinjen skriver, hvor mange maskeringer der er tilføjet, og de står nu som sorte bjælker på siderne.
4. Kig siderne igennem — og maskér resten selv
Indtil du gemmer, er bjælkerne kun et forslag. Kig siderne igennem i fremviseren. Under »Masker« over siden er der tre måder at tilføje noget, programmet har overset:
- »Masker ord« — træk hen over teksten, der skal væk.
- »Masker boks« — træk en firkant. Den bruger du til det, der ikke er tekst, fx en underskrift eller et stempel.
- Søgefeltet og »Søg og masker« — skriv fx et lønnummer, og alle forekomster i alle filerne bliver maskeret. Markerer du et ord med værktøjet »Marker« og højreklikker, kan du også vælge »Masker alle forekomster af …«.
Har programmet maskeret noget, der skal blive stående, vælger du værktøjet »Marker«, klikker på bjælken og trykker Delete. Vil du fortryde hele anonymiseringen, er den ét trin: Ctrl+Z eller »Fortryd«. Kørslen står med navn i historikken (Ctrl+H).
Tilføjer du en fil, efter du har anonymiseret, spørger programmet, om den også skal gennemgås. Du kan svare »Anonymisér«, »Ikke denne fil« eller »Ikke flere filer«. Det er bygget sådan, fordi den farligste fejl er et bilag, der bliver lagt ind til sidst og kommer med ud uden at være set. Trykker du på »Anonymiser« igen, kan du vælge mellem »Kun nye sider« og »Alle sider forfra«. Det, du fravalgte første gang, er stadig fravalgt.
5. Gem — her brændes maskeringerne ind
Gem med »Flet og gem« (én samlet fil) eller »Gem enkeltfiler«, og vælg PDF. Før der bliver gemt, kommer advarslen »Bekræft maskering«: maskeringerne fjerner indhold permanent i den gemte fil og kan ikke fortrydes i den.
Det er dét, der skiller en rigtig maskering fra en sort kasse. Når du gemmer, bliver teksten under bjælken slettet fra sidens indhold. På en scannet side bliver billedets pixels under bjælken gjort sorte. Bjælken er altså ikke et lag ovenpå. Der er ikke noget under den. Du gemmer en ny fil. Originalerne bliver ikke ændret, så længe du ikke selv vælger at gemme oven i dem.
6. Kontrollér den gemte fil
Åbn den nye fil i en almindelig PDF-læser, og gør tre ting:
- Søg med Ctrl+F efter efternavnet og de sidste fire cifre i CPR-nummeret.
- Markér teksten hen over en bjælke, kopiér den, og sæt den ind i Notesblok. Der skal ikke komme noget frem.
- Bladr de scannede sider igennem med øjnene. Det er dér, tekstgenkendelsen kan have læst forkert.

Hvad finder programmet, når du anonymiserer en PDF?
Navnegenkendelsen er ikke min. Den bygger på Microsofts frie værktøj Presidio og en dansk sprogmodel fra spaCy — et fagligt navn for et program, der har lært at genkende navne ud fra sætningerne omkring dem. Det, jeg har lagt til, er de danske regler: hvordan et CPR-nummer, et dansk telefonnummer og en dansk adresse ser ud. Typerne står i gennemgangen i denne rækkefølge:
| Type i gennemgangen | Sådan bliver den fundet |
|---|---|
| CPR-nummer | Med bindestreg eller mellemrum. Fødselsdatoen skal være en rigtig dato. Modulus 11-kontrollen afviser ikke, for den blev afskaffet 1. oktober 2007, og nyere numre består den ikke. Ti cifre i ét stræk findes, når modulus 11 går op, eller når der står »CPR« eller »født« i nærheden. |
| Muligt CPR-nummer | Kun på scannede sider: ti cifre, hvor tekstgenkendelsen har læst et tegn forkert, så datoen ikke går op. |
| CVR-nummer | Otte cifre, der består modulus 11 — som stadig gælder for CVR. |
| E-mailadresse, IBAN, Betalingskort | Efter deres faste form. |
| Telefonnummer | Danske numre, også med +45. Står de otte cifre i ét stræk uden mellemrum, skal der et ord som »tlf.« eller »mobil« i nærheden. |
| Kontonummer | Registrerings- og kontonummer. Kun når et ord som »konto«, »reg.nr.« eller »bank« står i nærheden — ellers er et talpar lige så tit en dato eller et beløb. |
| Navn | Sprogmodellen. Et for- og efternavn, der er fundet ét sted, bliver eftersøgt på alle siderne — også hvis tekstgenkendelsen har skrevet det i ét ord, som »RasmusNedergaard«. |
| Adresse | Vejnavn og husnummer, også vejnavne i flere ord som »Marius Holsts Gade 8, 3. tv.«. |
| Postnummer og by | Tallet og bynavnet bliver tjekket mod den officielle liste over 1.089 danske postnumre. |
| Sagsnummer | Rettens sagsnumre (fx »BS 1234/2024«) og numre efter »j.nr.«, »sagsnr.« eller »journalnr.«. |
| Organisation, Sted | Sprogmodellen. Domstole og myndigheder sorteres fra, og det samme gør bynavnet efter »Retten i«. |
Postnummerkontrollen er der af en grund. Uden den blev lønartsnumre som »1511 Overarbejde« og »2026 Firmapension« læst som en adresse. På et rigtigt processkrift på 39 sider gik de falske byer fra 46 til 0.
Lønsedler er sværest, fordi de ikke har sætninger, kun celler. Her gættede sprogmodellen på hvert ord, så »Gage« og »Helligdagstillæg« blev til personer. Nu prøver programmet ordet med lille begyndelsesbogstav: »christensen« er stadig et navn, »gage« er ikke. Målt på en rigtig lønseddel gik første side fra 14 fund til 7, og alle 7 var rigtige.
Engelske sider i en dansk sag bliver også læst med en engelsk sprogmodel. Den danske model fandt 12 af 18 navne på otte engelske dokumenter, og med begge modeller blev det 18 af 18. CPR-numre og adresser findes på de engelske sider som på de danske.
Det kan programmet ikke
Gennemgangen er der, fordi en maskine ikke kan få det hele med. Det her ved jeg, at den overser eller ikke tager stilling til:
- Den læser kun teksten på siderne. Filnavnet, dokumentets egenskaber (forfatter, titel) og kommentarer i margenen bliver ikke gennemgået. Brug værktøjet, der fjerner metadata fra filen, hvis forfatterfeltet ikke må følge med.
- Billeder inde i en almindelig PDF bliver ikke læst. Tekstgenkendelsen kører kun på sider, der næsten ikke har tekst. Et indsat billede af et brev med et navn på en side, der ellers er almindelig tekst, bliver ikke læst.
- Underskrifter og stempler er ikke tekst. Dem skal du selv dække med »Masker boks«.
- Tekstgenkendelsen kan læse forkert. Gennemgangen skriver selv, hvor mange sider der er læst med tekstgenkendelse, og beder dig kontrollere dem. Er en scannet side drejet, finder programmet selv den rigtige retning — men kun én retning pr. side. En tabel, der står på hovedet midt på en side, bliver til volapyk.
- Et sjældent efternavn alene i en tabelcelle kan falde ud sammen med fagordene. Står det et andet sted med fornavn, bliver det reddet. Navne under fire bogstaver, som »Bo«, bliver ikke eftersøgt på de andre sider, fordi de også er almindelige ord.
- Den ved ikke, hvad der må stå. Arbejdsgiverens navn, adresse og CVR-nummer bliver fundet og er valgt. Om de skal stå i et kursusmateriale, er din beslutning.
- Den fjerner ikke det, der kan genkende en person uden navn: en stillingsbetegnelse på en lille arbejdsplads, en dato for en ulykke, et særligt sygdomsforløb. Det kan kun et menneske, der kender sagen, vurdere.
Har du kun én enkelt PDF og ikke kan installere noget på pc'en, kan du bruge browserværktøjet til PDF-anonymisering. Det kører også lokalt, men det finder kun CPR-numre med bindestreg og de ord, du selv skriver, og det kan ikke læse scannede sider.
Ofte stillede spørgsmål
Kan man fjerne et CPR-nummer fra en PDF, uden at det kan findes igen?
Ja, hvis teksten bliver slettet og ikke bare dækket. I UniteDocs sker det, når du gemmer. Prøv selv bagefter: søg efter de sidste fire cifre i den gemte fil. Findes de, er nummeret ikke fjernet.
Hvordan slører man personoplysninger i en scannet PDF?
Programmet skal først kunne læse siden. Lad fluebenet »Læs også scannede sider (tekstgenkendelse)« stå, når du starter. Når filen gemmes, bliver billedet under bjælkerne gjort sort, så der ikke kan læses noget under dem.
Kan jeg fortryde en maskering?
Ja, indtil du gemmer — med Ctrl+Z, eller ved at slette den enkelte bjælke. I den gemte fil kan den ikke fortrydes. Dine originale filer bliver ikke ændret.
Bliver mine filer sendt nogen steder hen?
Nej. Sprogmodellerne ligger på din pc, og hele gennemgangen sker dér. Der er ingen konto og intet upload.
Du kan hente programmet gratis på siden om UniteDocs. Koden er åben, så alle kan se, hvordan reglerne ovenfor er skrevet.
Læs også
Synes du artiklen var nyttig?
Del den med dit netværk