Menghapus tanda air dari PDF dengan Java

Hapus artefak tanda air dari halaman pertama PDF di Java.

Menghapus artefak tanda air

Contoh ini hanya menghapus artefak bertipe Pagination dan bersubtipe Watermark dari halaman pertama. Tanda air yang terlihat dan tersimpan sebagai teks biasa pada halaman, gambar, atau anotasi tetap ada dalam PDF.

  1. Buka PDF sumber dengan Document.
  2. Telusuri koleksi artefak halaman secara terbalik.
  3. Hapus artefak paginasi yang subtipenya adalah tanda air.
  4. Simpan dokumen.
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());
    }
}

Topik terkait