RedactRegion

Manipulação de páginas

Descrição

Remove efetivamente texto, caminhos vetoriais e Image XObjects cuja área pintada intersete o retângulo, editando o fluxo de conteúdo da página para que os glifos, vetores e bytes da imagem subjacentes desapareçam e não possam ser recuperados. Isto é fundamentalmente diferente de MaskRect, que se limita a pintar um retângulo opaco sobre o conteúdo (os bytes originais permanecem e podem ser extraídos)

Para cada camada de conteúdo, o método analisa o fluxo, acompanha a CTM (respeitando cm/q/Q), identifica instruções cuja caixa delimitadora transformada interseta a região e elimina-as. Comportamentos opcionais controlados por Options: marcar a região com uma caixa de preenchimento preta e emitir uma anotação padrão /Subtype /Redact

Limitações: o rastreio da CTM é aproximado para transformações inclinadas/rodadas (as escalas lineares e a linha de base de identidade são tratadas exatamente). A largura do texto é estimada a partir do número de glifos e do tamanho do tipo de letra, pois o fluxo de conteúdo não contém métricas. A colocação do XObject de imagem é aproximada como o quadrado unitário transformado pela CTM

Sintaxe

Delphi

Function TPDFlib.RedactRegion(Page: Integer; Left, Top, Width, Height: Double; Options: Integer): Integer;

Parâmetros

PageO número de página de base 1
Left, TopCanto superior esquerdo da região nas unidades de medição atuais (origem superior esquerda)
Width, HeightTamanho da região nas unidades de medição atuais
Options0 = remover + preenchimento preto + Redact annotation; 1 = remover apenas; 2 = remover + Redact annotation (sem preenchimento)

Valores devolvidos

>= 0O número de intervalos de instruções removidos em todas as camadas de conteúdo (0 significa que nada foi intersetado)