So fügen Sie Zeichenformen in Java hinzu

So fügen Sie Zeichenformen in Java hinzu

Dieser Leitfaden zeigt, wie man geometrische Formen zeichnet und mit Seiten-Artefakt-Dekorationen in Aspose.PDF FOSS für Java arbeitet. Sie lernen, ein CircleAnnotation hinzuzufügen, um eine Ellipse zu zeichnen, Wasserzeichen- und Kopfzeilen-Artefakte zu untersuchen und Artefakt-Objekte zu entfernen.

Kreis zeichnen

Fügen Sie ein CircleAnnotation hinzu, um eine gefüllte oder umrandete Ellipse auf einer Seite zu zeichnen. Die setColor()-Methode legt die Füllfarbe der Anmerkung fest. Fügen Sie die Anmerkung zur Anmerkungssammlung der Seite hinzu und speichern Sie das Dokument:

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");
}

Der Rectangle-Konstruktor nimmt (x1, y1, x2, y2) in PDF-Einheiten (Punkte, gemessen vom unteren linken Eck der Seite) entgegen.

Seiten-Artefakte untersuchen

Artefakte sind nicht-inhaltliche Dekorationen wie Kopfzeilen, Fußzeilen und Wasserzeichen. Durchlaufen Sie die vorhandenen Artefakte auf einer Seite, um deren Typ und Untertyp zu prüfen:

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());
    }
}

Ein Watermark-Artifact entfernen

Finde Artefakte vom Typ “Watermark” und lösche sie aus der Artefakt-Sammlung der Seite. Speichere das Dokument, nachdem du die Änderung vorgenommen hast:

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");
}

Seitenabmessungen ermitteln

Um Formen korrekt zu positionieren, hole zuerst die Abmessungen der Media-Box der Seite. Standard-A4 ist 595×842 Punkte; Standard-US-Letter ist 612×792 Punkte:

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");
}

Siehe auch

 Deutsch