Drehen Sie Text in PDF-Dokumenten in Java

PDF ist ein plattformübergreifendes Dokumentformat, das ein einheitliches Layout für verschiedene Betriebssysteme bietet. Es wird häufig zum Generieren und Freigeben von Dokumenten wie Forschungsartikeln, Rechnungen usw. verwendet. Beim programmgesteuerten Generieren von PDF-Dateien müssen Sie häufig die Position und Ausrichtung des Textes entsprechend dem Layout des Dokuments ändern. In diesem Artikel zeigen wir Ihnen, wie Sie Text in PDF-Dokumenten in Java drehen.

Java-API zum Drehen von Text in PDF

Um Text in PDF-Dateien zu drehen, verwenden wir Aspose.PDF for Java. Es ist eine leistungsstarke Bibliothek, die sowohl grundlegende als auch erweiterte PDF-Manipulationsfunktionen bietet. Sie können die API herunterladen oder sie mit den folgenden Maven-Konfigurationen installieren.

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>

Drehen Sie Text in PDF in Java

Es gibt mehrere Möglichkeiten, einen Text in einem PDF-Dokument zu drehen. Sie können entweder ein Textfragment oder den kompletten Absatz drehen. Mal sehen, wie jede dieser Textrotationen funktioniert.

PDF-Textrotation mit TextFragment in Java

Im Folgenden sind die Schritte zum Drehen eines Textfragments in einem PDF-Dokument mit Java aufgeführt.

Das folgende Codebeispiel zeigt, wie Text in einem PDF-Dokument in Java gedreht wird.

// Dokumentenobjekt initialisieren
Document pdfDocument = new Document();

// Holen Sie sich eine bestimmte Seite
Page pdfPage = pdfDocument.getPages().add();

// Textfragment erstellen
TextFragment textFragment1 = new TextFragment("main text");
textFragment1.setPosition(new Position(100, 600));

// Texteigenschaften festlegen
textFragment1.getTextState().setFontSize(12);
textFragment1.getTextState().setFont(FontRepository.findFont("TimesNewRoman"));

// Gedrehtes Textfragment erstellen
TextFragment textFragment2 = new TextFragment("rotated text");
textFragment2.setPosition(new Position(200, 600));
// Texteigenschaften festlegen
textFragment2.getTextState().setFontSize(12);
textFragment2.getTextState().setFont(FontRepository.findFont("TimesNewRoman"));
textFragment2.getTextState().setRotation(45);

// Gedrehtes Textfragment erstellen
TextFragment textFragment3 = new TextFragment("rotated text");
textFragment3.setPosition(new Position(300, 600));

// Texteigenschaften festlegen
textFragment3.getTextState().setFontSize(12);
textFragment3.getTextState().setFont(FontRepository.findFont("TimesNewRoman"));
textFragment3.getTextState().setRotation(90);

// TextBuilder-Objekt erstellen
TextBuilder textBuilder = new TextBuilder(pdfPage);

// Hängen Sie das Textfragment an die PDF-Seite an
textBuilder.appendText(textFragment1);
textBuilder.appendText(textFragment2);
textBuilder.appendText(textFragment3);

// Dokument speichern
pdfDocument.save("Rotate_Text_TextFragment.pdf");

Ausgabe

PDF-Textrotation mit TextFragment in Java

PDF-Textrotation mit TextParagraph in Java

Sie können den Text auch drehen, während Sie einen neuen Absatz erstellen. Dies kann mit der Klasse TextParagraph erreicht werden. Im Folgenden sind die Schritte zum Anwenden der Textrotation mithilfe der TextParagraph-Klasse aufgeführt.

Das folgende Codebeispiel zeigt, wie Text innerhalb eines Absatzes in PDF programmgesteuert gedreht wird.

// Dokumentenobjekt initialisieren
Document pdfDocument = new Document();

// Holen Sie sich eine bestimmte Seite
Page pdfPage = (Page) pdfDocument.getPages().add();

// Textabsatz erstellen
TextParagraph paragraph = new TextParagraph();
paragraph.setPosition(new Position(200, 600));

// Textfragment erstellen
TextFragment textFragment1 = new TextFragment("rotated text");

// Texteigenschaften festlegen
textFragment1.getTextState().setFontSize(12);
textFragment1.getTextState().setFont(FontRepository.findFont("TimesNewRoman"));

// Drehung einstellen
textFragment1.getTextState().setRotation(45);

// Textfragment erstellen
TextFragment textFragment2 = new TextFragment("main text");

// Texteigenschaften festlegen
textFragment2.getTextState().setFontSize(12);
textFragment2.getTextState().setFont(FontRepository.findFont("TimesNewRoman"));

// Textfragment erstellen
TextFragment textFragment3 = new TextFragment("another rotated text");

// Texteigenschaften festlegen
textFragment3.getTextState().setFontSize(12);
textFragment3.getTextState().setFont(FontRepository.findFont("TimesNewRoman"));

// Drehung einstellen
textFragment3.getTextState().setRotation(-45);

// Fügen Sie die Textfragmente an den Absatz an
paragraph.appendLine(textFragment1);
paragraph.appendLine(textFragment2);
paragraph.appendLine(textFragment3);

// TextBuilder-Objekt erstellen
TextBuilder textBuilder = new TextBuilder(pdfPage);

// Fügen Sie den Textabsatz an die PDF-Seite an
textBuilder.appendParagraph(paragraph);

// Dokument speichern
pdfDocument.save("Rotate_Text_TextParagraph.pdf");

Ausgabe

PDF-Textrotation mit TextParagraph in Java

Holen Sie sich eine kostenlose API-Lizenz

Sie können Aspose.PDF für Java kostenlos testen, indem Sie eine temporäre Lizenz erwerben.

Fazit

In diesem Artikel haben Sie gelernt, wie Sie Text in PDF programmgesteuert mit Java drehen. Wir haben behandelt, wie Text mithilfe der Klassen TextFragment und TextParagraph gedreht wird. Darüber hinaus können Sie in der Dokumentation mehr über Aspose.PDF für Java erfahren. Falls Sie Fragen oder Anregungen haben, können Sie uns über unser Forum kontaktieren.

Siehe auch