Erstellen Sie getaggte PDF-Dateien in Java

Eine getaggte PDF-Datei verwendet Tags, um die logische Struktur des Inhalts im Dokument zu definieren. Diese Art von PDF verbessert das Leseerlebnis mithilfe von Hilfstechnologien und Screenreadern. Im vorherigen Beitrag haben Sie gesehen, wie Sie PDF-Dateien programmgesteuert in Java-Anwendungen erstellen. In diesem Artikel erfahren Sie, wie Sie getaggte PDF-Dateien programmgesteuert in Java erstellen.

Java-API zum Erstellen von getaggten PDF-Dateien

Um die getaggten PDF-Dateien zu erstellen, verwenden wir Aspose.PDF for Java. Es ist eine der beliebtesten APIs für die PDF-Generierung und -Bearbeitung. Mit der API können Sie PDF-Dateien mit einfachen und komplexen Layouts nahtlos erstellen, verarbeiten und konvertieren. Sie können die API herunterladen oder sie mit den folgenden Maven-Konfigurationen installieren.

Repository:

<repository>
    <id>AsposeJavaAPI</id>
    <name>Aspose Java API</name>
    <url>https://repository.aspose.com/repo/</url>
</repository>

Abhängigkeit:

<dependency>
    <groupId>com.aspose</groupId>
    <artifactId>aspose-pdf</artifactId>
    <version>22.4</version>
</dependency>

Erstellen Sie eine getaggte PDF-Datei in Java

Um Strukturelemente in einem getaggten PDF zu erstellen, stellt Aspose.PDF für Java die Schnittstelle ITaggedContent bereit. Sehen wir uns also an, wie Sie diese Schnittstelle verwenden, um eine getaggte PDF-Datei in Java zu erstellen.

Das folgende Codebeispiel zeigt, wie Sie eine mit Tags versehene PDF-Datei in Java erstellen.

// Erstellen Sie ein neues Dokument
Document document = new Document();

// Holen Sie sich Inhalte für die Arbeit mit Tagged PDF
ITaggedContent taggedContent = document.getTaggedContent();
StructureElement rootElement = taggedContent.getRootElement();
            
// Legen Sie Titel und Sprache für das Dokument fest
taggedContent.setTitle("Tagged Pdf Document");
taggedContent.setLanguage("en-US");

// Kopfzeile hinzufügen
HeaderElement mainHeader = taggedContent.createHeaderElement();
mainHeader.setText("Main Header");

// Absatz hinzufügen
ParagraphElement paragraphElement = taggedContent.createParagraphElement();
paragraphElement.setText("Lorem ipsum dolor sit amet, consectetur adipiscing elit. " +
"Aenean nec lectus ac sem faucibus imperdiet. Sed ut erat ac magna ullamcorper hendrerit. " +
"Cras pellentesque libero semper, gravida magna sed, luctus leo. Fusce lectus odio, laoreet" +
"nec ullamcorper ut, molestie eu elit. Interdum et malesuada fames ac ante ipsum primis in faucibus." +
"Aliquam lacinia sit amet elit ac consectetur. Donec cursus condimentum ligula, vitae volutpat" +
"sem tristique eget. Nulla in consectetur massa. Vestibulum vitae lobortis ante. Nulla ullamcorper" +
"pellentesque justo rhoncus accumsan. Mauris ornare eu odio non lacinia. Aliquam massa leo, rhoncus" +
"ac iaculis eget, tempus et magna. Sed non consectetur elit. Sed vulputate, quam sed lacinia luctus," +
"ipsum nibh fringilla purus, vitae posuere risus odio id massa. Cras sed venenatis lacus.");

rootElement.appendChild(mainHeader);
rootElement.appendChild(paragraphElement);

// Getaggtes PDF speichern
document.save("tagged-pdf.pdf");

Das Folgende ist die Ausgabe des obigen Codebeispiels.

Erstellen Sie eine getaggte PDF-Datei in Java

Erstellen Sie ein mit Tags versehenes PDF mit verschachtelten Elementen in Java

Im vorherigen Beispiel haben wir eine einfache PDF-Datei mit Tags erstellt, die einen Absatz enthält. Schauen wir uns nun an, wie man verschachtelte Elemente in einem getaggten PDF hinzufügt. Im Folgenden sind die Schritte zum Ausführen dieses Vorgangs aufgeführt.

Das folgende Codebeispiel zeigt, wie Sie verschachtelte Elemente in einer mit Tags versehenen PDF-Datei in Java hinzufügen.

// Erstellen Sie ein neues Dokument
Document document = new Document();

// Holen Sie sich Inhalte für die Arbeit mit Tagged PDF
ITaggedContent taggedContent = document.getTaggedContent();
StructureElement rootElement = taggedContent.getRootElement();
            
// Legen Sie Titel und Sprache für das Dokument fest
taggedContent.setTitle("Tagged Pdf Document");
taggedContent.setLanguage("en-US");

// Kopfzeile hinzufügen
HeaderElement mainHeader = taggedContent.createHeaderElement();
mainHeader.setText("Main Header");

// Absatz erstellen
ParagraphElement paragraphWithQuotes = taggedContent.createParagraphElement();
paragraphWithQuotes.getStructureTextState().setFont(FontRepository.findFont("Calibri"));
paragraphWithQuotes.getStructureTextState().setMarginInfo(new MarginInfo(10, 5, 10, 5));

// Span-Element hinzufügen
SpanElement spanElement1 = taggedContent.createSpanElement();
spanElement1.setText("Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aenean nec lectus ac sem faucibus imperdiet. Sed ut erat ac magna ullamcorper hendrerit. Cras pellentesque libero semper, gravida magna sed, luctus leo. Fusce lectus odio, laoreet nec ullamcorper ut, molestie eu elit. Interdum et malesuada fames ac ante ipsum primis in faucibus. Aliquam lacinia sit amet elit ac consectetur. Donec cursus condimentum ligula, vitae volutpat sem tristique eget. Nulla in consectetur massa. Vestibulum vitae lobortis ante. Nulla ullamcorper pellentesque justo rhoncus accumsan. Mauris ornare eu odio non lacinia. Aliquam massa leo, rhoncus ac iaculis eget, tempus et magna. Sed non consectetur elit. ");
QuoteElement quoteElement = taggedContent.createQuoteElement();
quoteElement.setText("Sed vulputate, quam sed lacinia luctus, ipsum nibh fringilla purus, vitae posuere risus odio id massa.");
quoteElement.getStructureTextState().setFontStyle(FontStyles.Bold | FontStyles.Italic);
SpanElement spanElement2 = taggedContent.createSpanElement();
spanElement2.setText(" Sed non consectetur elit.");

// An Absatz anhängen
paragraphWithQuotes.appendChild(spanElement1);
paragraphWithQuotes.appendChild(quoteElement);
paragraphWithQuotes.appendChild(spanElement2);

rootElement.appendChild(mainHeader);
rootElement.appendChild(paragraphWithQuotes);

// Getaggtes PDF speichern
document.save("tagged-pdf.pdf");

Der folgende Screenshot zeigt das getaggte PDF mit verschachtelten Elementen.

Erstellen Sie ein mit Tags versehenes PDF mit verschachtelten Elementen in Java

Gestalten der Textstruktur in einem getaggten PDF

Sie können auch Stile auf den Text in einem getaggten PDF anwenden, indem Sie Schriftart, Familie, Größe usw. festlegen. Zu diesem Zweck können Sie mit Aspose.PDF für Java Schriftart, Schriftgröße, Schriftart und Vordergrundfarbe mithilfe von [StructureTextState] festlegen. 22 Klasse. Das folgende Codebeispiel zeigt, wie Textstile in einer mit Tags versehenen PDF-Datei in Java angewendet werden.

// Erstellen Sie ein neues Dokument
Document document = new Document();

// Holen Sie sich Inhalte für die Arbeit mit Tagged PDF
ITaggedContent taggedContent = document.getTaggedContent();
StructureElement rootElement = taggedContent.getRootElement();
            
// Legen Sie Titel und Sprache für das Dokument fest
taggedContent.setTitle("Tagged Pdf Document");
taggedContent.setLanguage("en-US");

// Kopfzeile hinzufügen
HeaderElement mainHeader = taggedContent.createHeaderElement();
mainHeader.setText("Main Header");

// Absatz erstellen
ParagraphElement paragraphWithQuotes = taggedContent.createParagraphElement();
taggedContent.getRootElement().appendChild(paragraphWithQuotes);

// Styling festlegen
paragraphWithQuotes.getStructureTextState().setFontSize(18F);
paragraphWithQuotes.getStructureTextState().setForegroundColor(Color.getRed());
paragraphWithQuotes.getStructureTextState().setFontStyle(FontStyles.Italic);
            
// Text hinzufügen
paragraphWithQuotes.setText("Red italic text.");

// Getaggtes PDF speichern
document.save("tagged-pdf.pdf");

Veranschaulichen von Strukturelementen in einem getaggten PDF in Java

Zur Veranschaulichung der Strukturelemente stellt Aspose.PDF für Java die Klasse IllustrationElement bereit. Das folgende Codebeispiel zeigt, wie diese Klasse verwendet wird, um die Strukturelemente in einer PDF-Datei mit Tags zu veranschaulichen.

// Erstellen Sie ein neues Dokument
Document document = new Document();

// Holen Sie sich Inhalte für die Arbeit mit Tagged PDF
ITaggedContent taggedContent = document.getTaggedContent();
StructureElement rootElement = taggedContent.getRootElement();
            
// Legen Sie Titel und Sprache für das Dokument fest
taggedContent.setTitle("Tagged Pdf Document");
taggedContent.setLanguage("en-US");

// illustrationElement erstellen
IllustrationElement figure1 = taggedContent.createFigureElement();
taggedContent.getRootElement().appendChild(figure1);
figure1.setAlternativeText( "Figure One");
figure1.setTitle("Image 1");
figure1.setTag("Fig1");
figure1.setImage("aspose_pdf.png");

// Getaggtes PDF speichern
document.save("tagged-pdf.pdf");

Holen Sie sich eine kostenlose Lizenz

Sie können eine kostenlose temporäre Lizenz erhalten, um Aspose.PDF für Java ohne Evaluierungseinschränkungen zu verwenden.

Fazit

In diesem Artikel haben Sie gelernt, wie Sie getaggte PDF-Dateien in Java erstellen. Darüber hinaus haben Sie gesehen, wie Sie verschachtelte Elemente erstellen, Stile auf Text anwenden und Strukturelemente in einem mit Tags versehenen PDF programmgesteuert darstellen. Darüber hinaus können Sie mithilfe der Dokumentation mehr über die Java-PDF-API erfahren. Falls Sie Fragen oder Anregungen haben, können Sie uns über unser Forum kontaktieren.

Siehe auch