PDF to wieloplatformowy format dokumentu, który zapewnia spójny układ w różnych systemach operacyjnych. Jest szeroko stosowany do generowania i udostępniania dokumentów, takich jak artykuły naukowe, faktury itp. Podczas programowego generowania plików PDF często trzeba zmieniać położenie i orientację tekstu zgodnie z układem dokumentu. W tym artykule pokażemy, jak obracać tekst w dokumentach PDF w Javie.
Java API do obracania tekstu w formacie PDF
Aby obrócić tekst w plikach PDF, użyjemy Aspose.PDF for Java. Jest to potężna biblioteka, która zapewnia zarówno podstawowe, jak i zaawansowane funkcje manipulacji plikami PDF. Możesz pobrać API lub zainstalować je przy użyciu następujących konfiguracji Mavena.
Magazyn:
<id>AsposeJavaAPI</id>
<name>Aspose Java API</name>
<url>https://repository.aspose.com/repo/</url>
</repository>
Zależność:
<dependency>
<groupId>com.aspose</groupId>
<artifactId>aspose-pdf</artifactId>
<version>22.4</version>
</dependency>
Obróć tekst w pliku PDF w Javie
Istnieje wiele sposobów obracania tekstu w dokumencie PDF. Możesz obrócić fragment tekstu lub cały akapit. Zobaczmy, jak działa każda z tych rotacji tekstu.
Obrót tekstu PDF przy użyciu TextFragment w Javie
Poniżej przedstawiono kroki obracania fragmentu tekstu w dokumencie PDF przy użyciu języka Java.
- Najpierw utwórz nowy dokument przy użyciu klasy Document.
- Następnie dodaj stronę do dokumentu i pobierz jej referencję za pomocą metody Document.getPages().add().
- Następnie utwórz nowy fragment tekstu za pomocą klasy TextFragment.
- Ustaw pozycję i czcionkę fragmentu tekstu.
- Ustaw kąt obrotu metodą TextFragment.getTextState().setRotation().
- Utwórz nowy obiekt TextBuilder i zainicjuj go obiektem Page.
- Użyj metody TextBuilder.appendText(TextFragment), aby dodać tekst do strony.
- Na koniec zapisz dokument PDF za pomocą metody Document.save(string).
Poniższy przykładowy kod pokazuje, jak obracać tekst w dokumencie PDF w Javie.
// Zainicjuj obiekt dokumentu
Document pdfDocument = new Document();
// Uzyskaj określoną stronę
Page pdfPage = pdfDocument.getPages().add();
// Utwórz fragment tekstu
TextFragment textFragment1 = new TextFragment("main text");
textFragment1.setPosition(new Position(100, 600));
// Ustaw właściwości tekstu
textFragment1.getTextState().setFontSize(12);
textFragment1.getTextState().setFont(FontRepository.findFont("TimesNewRoman"));
// Utwórz obrócony fragment tekstu
TextFragment textFragment2 = new TextFragment("rotated text");
textFragment2.setPosition(new Position(200, 600));
// Ustaw właściwości tekstu
textFragment2.getTextState().setFontSize(12);
textFragment2.getTextState().setFont(FontRepository.findFont("TimesNewRoman"));
textFragment2.getTextState().setRotation(45);
// Utwórz obrócony fragment tekstu
TextFragment textFragment3 = new TextFragment("rotated text");
textFragment3.setPosition(new Position(300, 600));
// Ustaw właściwości tekstu
textFragment3.getTextState().setFontSize(12);
textFragment3.getTextState().setFont(FontRepository.findFont("TimesNewRoman"));
textFragment3.getTextState().setRotation(90);
// Utwórz obiekt TextBuilder
TextBuilder textBuilder = new TextBuilder(pdfPage);
// Dołącz fragment tekstu do strony PDF
textBuilder.appendText(textFragment1);
textBuilder.appendText(textFragment2);
textBuilder.appendText(textFragment3);
// Zapisz dokument
pdfDocument.save("Rotate_Text_TextFragment.pdf");
Wyjście
Obrót tekstu PDF za pomocą TextParagraph w Javie
Możesz także obrócić tekst podczas tworzenia nowego akapitu. Można to osiągnąć za pomocą klasy TextParagraph. Poniżej przedstawiono kroki, aby zastosować obrót tekstu przy użyciu klasy TextParagraph.
- Najpierw utwórz nowy dokument przy użyciu klasy Document.
- Następnie dodaj stronę do dokumentu i pobierz jej referencję za pomocą metody Document.getPages().add().
- Następnie utwórz nowy obiekt TextParagraph.
- Utwórz nowy fragment tekstu za pomocą klasy TextFragment i ustaw tekst oraz czcionkę.
- Ustaw kąt obrotu metodą TextFragment.getTextState().setRotation().
- Dodaj tekst do akapitu za pomocą metody TextParagraph.appendLine(TextFragment).
- Utwórz nowy obiekt TextBuilder i zainicjuj go obiektem Page.
- Użyj metody TextBuilder.appendParagraph(TextParagraph), aby dodać akapit do strony.
- Na koniec zapisz dokument PDF za pomocą metody Document.save(string).
Poniższy przykładowy kod pokazuje, jak programowo obrócić tekst wewnątrz akapitu w pliku PDF.
// Zainicjuj obiekt dokumentu
Document pdfDocument = new Document();
// Uzyskaj określoną stronę
Page pdfPage = (Page) pdfDocument.getPages().add();
// Utwórz akapit tekstu
TextParagraph paragraph = new TextParagraph();
paragraph.setPosition(new Position(200, 600));
// Utwórz fragment tekstu
TextFragment textFragment1 = new TextFragment("rotated text");
// Ustaw właściwości tekstu
textFragment1.getTextState().setFontSize(12);
textFragment1.getTextState().setFont(FontRepository.findFont("TimesNewRoman"));
// Ustaw obrót
textFragment1.getTextState().setRotation(45);
// Utwórz fragment tekstu
TextFragment textFragment2 = new TextFragment("main text");
// Ustaw właściwości tekstu
textFragment2.getTextState().setFontSize(12);
textFragment2.getTextState().setFont(FontRepository.findFont("TimesNewRoman"));
// Utwórz fragment tekstu
TextFragment textFragment3 = new TextFragment("another rotated text");
// Ustaw właściwości tekstu
textFragment3.getTextState().setFontSize(12);
textFragment3.getTextState().setFont(FontRepository.findFont("TimesNewRoman"));
// Ustaw obrót
textFragment3.getTextState().setRotation(-45);
// Dołącz fragmenty tekstu do akapitu
paragraph.appendLine(textFragment1);
paragraph.appendLine(textFragment2);
paragraph.appendLine(textFragment3);
// Utwórz obiekt TextBuilder
TextBuilder textBuilder = new TextBuilder(pdfPage);
// Dołącz akapit tekstu do strony PDF
textBuilder.appendParagraph(paragraph);
// Zapisz dokument
pdfDocument.save("Rotate_Text_TextParagraph.pdf");
Wyjście
Uzyskaj bezpłatną licencję API
Możesz wypróbować Aspose.PDF for Java za darmo, uzyskując tymczasową licencję.
Wniosek
W tym artykule nauczyłeś się, jak programowo obracać tekst w formacie PDF za pomocą języka Java. Omówiliśmy, jak obracać tekst za pomocą klas TextFragment i TextParagraph. Ponadto możesz dowiedzieć się więcej o Aspose.PDF dla Javy, korzystając z dokumentacji. W przypadku jakichkolwiek pytań lub wątpliwości możesz skontaktować się z nami za pośrednictwem naszego forum.