Eliminar marcas de agua PDF en Java
Contents
[
Hide
]
Eliminar artefactos de marca de agua de la primera página de un PDF en Java.
Eliminar artefactos de marca de agua
El ejemplo solo elimina de la primera página los artefactos de tipo Pagination y subtipo Watermark. Las marcas de agua visibles almacenadas como texto normal de la página, imágenes o anotaciones permanecen en el PDF.
- Abra el PDF de origen con Document.
- Recorra la colección de artefactos de la página en orden inverso.
- Elimine los artefactos de paginación cuyo subtipo es marca de agua, y luego guarde el documento.
public static void deleteWatermarkArtifact(Path inputFile, Path outputFile) {
try (Document document = new Document(inputFile.toString())) {
for (int i = document.getPages().get_Item(1).getArtifacts().size(); i >= 1; i--) {
Artifact artifact = document.getPages().get_Item(1).getArtifacts().get_Item(i);
if (artifact.getType() == Artifact.ArtifactType.Pagination
&& artifact.getSubtype() == Artifact.ArtifactSubtype.Watermark) {
document.getPages().get_Item(1).getArtifacts().delete(artifact);
}
}
document.save(outputFile.toString());
}
}