Hoe tekenvormen toe te voegen in Java

Hoe tekenvormen toe te voegen in Java

Deze gids laat zien hoe je geometrische vormen tekent en werkt met paginadecoraties van artefacten in Aspose.PDF FOSS voor Java. Je leert hoe je een CircleAnnotation toevoegt om een ellips te tekenen, watermerk- en koptekstartifacten te inspecteren, en artefactobjecten te verwijderen.

Teken een cirkel

Voeg een CircleAnnotation toe om een gevulde of begrensde ellips op een pagina te tekenen. De setColor()-methode stelt de opvulkleur van de annotatie in. Voeg de annotatie toe aan de annotatiecollectie van de pagina en sla het document op:

try (Document doc = new Document()) {
    PageCollection pages = doc.getPages();
    Page page = pages.add();
    CircleAnnotation circle = new CircleAnnotation(page,
        new Rectangle(100, 100, 200, 200));
    circle.setColor(Color.fromRgb(0, 0, 1));
    page.getAnnotations().add(circle);
    doc.save("circle.pdf");
}

De Rectangle-constructor neemt (x1, y1, x2, y2) in PDF-eenheden (punten, gemeten vanaf de linkeronderhoek van de pagina).

Inspecteer paginartifacten

Artefacten zijn decoraties zonder inhoud, zoals kopteksten, voetteksten en watermerken. Loop door de bestaande artefacten op een pagina om hun type en subtype te inspecteren:

try (Document doc = new Document("input.pdf")) {
    PageCollection pages = doc.getPages();
    Page page = pages.get(1);
    for (Artifact artifact : page.getArtifacts()) {
        System.out.println(artifact.getArtifactType() + ": " + artifact.getSubtype());
    }
}

Verwijder een Watermark-artefact

Zoek artefacten van het type “Watermark” en verwijder ze uit de artefactverzameling van de pagina. Sla het document op nadat je de wijziging hebt aangebracht:

try (Document doc = new Document("watermarked.pdf")) {
    PageCollection pages = doc.getPages();
    Page page = pages.get(1);
    for (Artifact artifact : page.getArtifacts()) {
        if ("Watermark".equals(artifact.getArtifactType())) {
            page.getArtifacts().delete(artifact);
            break;
        }
    }
    doc.save("clean.pdf");
}

Pagina-afmetingen ophalen

Om vormen correct te positioneren, haal eerst de afmetingen van de mediabox van de pagina op. Standaard A4 is 595×842 punten; standaard US Letter is 612×792 punten:

try (Document doc = new Document("input.pdf")) {
    PageCollection pages = doc.getPages();
    Page page = pages.get(1);
    double width = page.getMediaBox().getWidth();
    double height = page.getMediaBox().getHeight();
    System.out.println("Page: " + width + " x " + height + " pt");
}

Zie ook

 Nederlands