Redaction

Redaction

Deze pagina behandelt het permanent verwijderen van inhoud van een PDF-pagina. Aspose.PDF FOSS voor TypeScript biedt twee redactieworkflows: een twee-fasen markeer-dan-toepassen stroom die u kunt beoordelen voordat u commit, en een één-oproep onmiddellijke stroom. Beide zijn beschikbaar op Page voor één enkele pagina en op Document voor het gehele document.


Markeren en Toepassen van Redacties

Page.AddRedact() markeert een rechthoekig gebied met een /Redact annotatie — de onderliggende inhoud blijft onaangeraakt en nog steeds selecteerbaar voor kopiëren. Er wordt niets daadwerkelijk verwijderd totdat Page.ApplyRedactions() wordt uitgevoerd: het herschrijft destructief de content-stroom voor elke /Redact markering op de pagina, schildert de overlay van elke markering (zijn /IC vulling en /OverlayText), verwijdert de markeringen, en retourneert het aantal toegepaste redacties. Markeringen die na het aanroepen van ApplyRedactions() worden toegevoegd, blijven ongebruikt.

page.AddRedact({
  rect: [220, 550, 460, 566],
  fill: [0, 0, 0],
  overlayText: '[REDACTED]',
  align: 'center',
  fontSize: 9,
  textColor: [1, 1, 1],
});

const applied = page.ApplyRedactions();
console.log('Redactions applied:', applied);

Onmiddellijk Redigeren

Page.Redact() en Page.RedactText() combineren markeren en toepassen in één enkele oproep: ze verwijderen werkelijk de bedekte tekst en afbeeldingen, snoeien bronnen die door de verwijdering verweesd achterblijven, en schilderen een ondoorzichtige markeringsvak over elk gebied — zonder een aparte ApplyRedactions() stap en zonder iets eerst te kunnen beoordelen. Page.Redact() neemt een expliciete lijst van Rect gebieden; Page.RedactText() vindt en redigeert elke voorkoming van een zoekstring of RegExp, op dezelfde manier als Page.SearchAnnotationText() zoekt. Beide accepteren een RedactOptions object dat de marker color beheert, of er scrubMetadata moet worden, en of er keepAnnotations moet worden dat een geredigeerde regio overlapt.

Omdat ze inhoud onmiddellijk verwijderen zonder een beoordelingsstap, geef de voorkeur aan AddRedact() + ApplyRedactions() wanneer een markering controleerbaar moet zijn voordat deze wordt vastgelegd, en aan Redact() / RedactText() wanneer de gebieden of zoektermen al bekend zijn als veilig om te verwijderen.


Een heel document redigeren

Dezelfde twee workflows bestaan op Document, van toepassing op alle pagina’s tegelijk: Document.MarkRedactText() markeert elke voorkomen van een zoekterm op alle pagina’s, Document.ApplyRedactions() past elke markering in het document toe, en Document.Redact() / Document.RedactText() redigeren onmiddellijk de regio’s van een enkele pagina of een documentbrede zoekterm, waarbij ze hun Page equivalenten weerspiegelen.


Tips en best practices

  • Gebruik AddRedact() + ApplyRedactions() wanneer een redactie controleerbaar moet zijn voordat deze van kracht wordt; gebruik Redact() / RedactText() wanneer de regio’s al bevestigd veilig zijn om onmiddellijk te verwijderen.
  • Voeg elke AddRedact() markering voor een pagina toe voordat je ApplyRedactions() aanroept — markeringen die daarna worden toegevoegd, worden niet meegenomen in die oproep en blijven niet toegepast.
  • Geef scrubMetadata: true door in RedactOptions / ApplyRedactionsOptions wanneer de geredigeerde inhoud mogelijk ook aanwezig is in documentmetadata (/Info of XMP).
  • RedactText() en MarkRedactText() zoeken met dezelfde overeenkomstreeksen als SearchAnnotationText() / Search, dus een zoekterm die daar niet overeenkomt, zal ook niet redigeren.

Veelvoorkomende problemen

ProbleemOorzaakOplossing
Redactiemarkering heeft geen effectPage.ApplyRedactions() werd nooit aangeroepenRoep Page.AddRedact() eerst voor elke markering aan, daarna Page.ApplyRedactions() één keer
Inhoud is nog steeds herstelbaar na een markeringDe markering gebruikte AddRedact() (alleen markering) zonder een daaropvolgende ApplyRedactions()-aanroepRoep ApplyRedactions() aan, of gebruik Redact() / RedactText() voor eenmalige verwijdering
Gecensureerde tekst verschijnt opnieuw in de metadata van het geëxtraheerde documentscrubMetadata was niet ingesteldGeef { scrubMetadata: true } door in het optiesobject
ApplyRedactions() retourneert 0Er bestonden geen /Redact-markeringen op de pagina toen deze werd aangeroepenBevestig dat AddRedact() (of MarkRedactText()) eerst werd uitgevoerd en dezelfde pagina targette

FAQ

Wat is het verschil tussen AddRedact en Redact?

AddRedact() markeert alleen een gebied — de inhoud is nog steeds aanwezig en kan worden gekopieerd en geselecteerd totdat ApplyRedactions() wordt uitgevoerd. Redact() verwijdert de inhoud in dezelfde oproep, zonder een aparte toepasstap.

Kan ik redact toepassen door te zoeken naar tekst in plaats van coördinaten op te geven?

Ja. RedactText() vindt en redigeert onmiddellijk elke voorkoming van een zoekstring of RegExp; MarkRedactText() doet hetzelfde maar markeert alleen de overeenkomsten, zodat ze later door een ApplyRedactions()-aanroep kunnen worden verwerkt.

Werkt redactie over het hele document, of slechts één pagina per keer?

Beide. Page.Redact() / Page.ApplyRedactions() en hun verwanten werken op één pagina; Document.Redact() / Document.ApplyRedactions() en hun verwanten werken over elke pagina.

Worden annotaties in de buurt van een geredigeerd gebied ook verwijderd?

Alleen als je ze laat zijn. Geef keepAnnotations: true door in het optiesobject om annotaties die overlappen met een geredigeerd gebied te behouden in plaats van ze samen met dat gebied te verwijderen.


API Reference Samenvatting

Klasse/MethodeBeschrijving
Page.AddRedact()Markeer een rechthoekig gebied met een /Redact-annotatie, zonder de inhoud nog te verwijderen
Page.ApplyRedactions()Verwijder alle gemarkeerde regio’s op de pagina definitief en retourneer het toegepaste aantal
Page.Redact()Verwijder onmiddellijk de inhoud in de opgegeven regio’s, zonder een aparte toepasstap
Page.RedactText()Zoek en redigeer onmiddellijk elk voorkomen van een zoekterm of RegExp
Page.MarkRedactText()Zoek en markeer (zonder toe te passen) elke voorkoming van een zoekstring of RegExp
Document.ApplyRedactions()Pas elke /Redact markering toe over het hele document
Document.Redact() / Document.RedactText()Redigeer onmiddellijk regio’s op één pagina, of een zoekterm over elke pagina
Document.MarkRedactText()Markeer elke voorkoming van een zoekterm over elke pagina

Zie ook

 Nederlands