Xoay văn bản bên trong tài liệu PDF trong Java

PDF là định dạng tài liệu đa nền tảng cung cấp bố cục nhất quán trên các hệ điều hành khác nhau. Nó được sử dụng rộng rãi để tạo và chia sẻ tài liệu, chẳng hạn như các bài báo nghiên cứu, hóa đơn, v.v. Trong khi tạo tệp PDF theo chương trình, bạn thường cần thay đổi vị trí và hướng của văn bản theo bố cục của tài liệu. Trong bài viết này, chúng tôi sẽ hướng dẫn bạn cách xoay văn bản bên trong tài liệu PDF bằng Java.

API Java để xoay văn bản trong PDF

Để xoay văn bản bên trong tệp PDF, chúng tôi sẽ sử dụng Aspose.PDF for Java. Đây là một thư viện mạnh mẽ cung cấp các tính năng thao tác PDF cơ bản cũng như nâng cao. Bạn có thể tải xuống API hoặc cài đặt nó bằng cách sử dụng các cấu hình Maven sau.

Kho:

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

Sự phụ thuộc:

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

Xoay văn bản bên trong PDF trong Java

Có nhiều cách để xoay văn bản bên trong tài liệu PDF. Bạn có thể xoay một đoạn văn bản hoặc một đoạn văn bản hoàn chỉnh. Hãy xem từng cách xoay văn bản này hoạt động như thế nào.

Xoay văn bản PDF bằng TextFragment trong Java

Sau đây là các bước để xoay một đoạn văn bản trong tài liệu PDF bằng Java.

Mẫu mã sau đây cho thấy cách xoay văn bản trong tài liệu PDF bằng Java.

// Khởi tạo đối tượng tài liệu
Document pdfDocument = new Document();

// Nhận trang cụ thể
Page pdfPage = pdfDocument.getPages().add();

// Tạo đoạn văn bản
TextFragment textFragment1 = new TextFragment("main text");
textFragment1.setPosition(new Position(100, 600));

// Đặt thuộc tính văn bản
textFragment1.getTextState().setFontSize(12);
textFragment1.getTextState().setFont(FontRepository.findFont("TimesNewRoman"));

// Tạo đoạn văn bản xoay
TextFragment textFragment2 = new TextFragment("rotated text");
textFragment2.setPosition(new Position(200, 600));
// Đặt thuộc tính văn bản
textFragment2.getTextState().setFontSize(12);
textFragment2.getTextState().setFont(FontRepository.findFont("TimesNewRoman"));
textFragment2.getTextState().setRotation(45);

// Tạo đoạn văn bản xoay
TextFragment textFragment3 = new TextFragment("rotated text");
textFragment3.setPosition(new Position(300, 600));

// Đặt thuộc tính văn bản
textFragment3.getTextState().setFontSize(12);
textFragment3.getTextState().setFont(FontRepository.findFont("TimesNewRoman"));
textFragment3.getTextState().setRotation(90);

// Tạo đối tượng TextBuilder
TextBuilder textBuilder = new TextBuilder(pdfPage);

// Nối đoạn văn bản vào trang PDF
textBuilder.appendText(textFragment1);
textBuilder.appendText(textFragment2);
textBuilder.appendText(textFragment3);

// Lưu tài liệu
pdfDocument.save("Rotate_Text_TextFragment.pdf");

Đầu ra

Xoay văn bản PDF bằng TextFragment trong Java

Xoay văn bản PDF bằng TextParagraph trong Java

Bạn cũng có thể áp dụng xoay vòng cho văn bản trong khi tạo một đoạn văn mới. Điều này có thể đạt được bằng cách sử dụng lớp TextParagraph. Sau đây là các bước để áp dụng xoay vòng văn bản bằng lớp TextParagraph.

Mẫu mã sau đây cho thấy cách xoay văn bản bên trong một đoạn văn bản PDF theo chương trình.

// Khởi tạo đối tượng tài liệu
Document pdfDocument = new Document();

// Nhận trang cụ thể
Page pdfPage = (Page) pdfDocument.getPages().add();

// Tạo đoạn văn bản
TextParagraph paragraph = new TextParagraph();
paragraph.setPosition(new Position(200, 600));

// Tạo đoạn văn bản
TextFragment textFragment1 = new TextFragment("rotated text");

// Đặt thuộc tính văn bản
textFragment1.getTextState().setFontSize(12);
textFragment1.getTextState().setFont(FontRepository.findFont("TimesNewRoman"));

// Đặt xoay
textFragment1.getTextState().setRotation(45);

// Tạo đoạn văn bản
TextFragment textFragment2 = new TextFragment("main text");

// Đặt thuộc tính văn bản
textFragment2.getTextState().setFontSize(12);
textFragment2.getTextState().setFont(FontRepository.findFont("TimesNewRoman"));

// Tạo đoạn văn bản
TextFragment textFragment3 = new TextFragment("another rotated text");

// Đặt thuộc tính văn bản
textFragment3.getTextState().setFontSize(12);
textFragment3.getTextState().setFont(FontRepository.findFont("TimesNewRoman"));

// Đặt xoay
textFragment3.getTextState().setRotation(-45);

// Nối các đoạn văn bản vào đoạn văn
paragraph.appendLine(textFragment1);
paragraph.appendLine(textFragment2);
paragraph.appendLine(textFragment3);

// Tạo đối tượng TextBuilder
TextBuilder textBuilder = new TextBuilder(pdfPage);

// Nối đoạn văn bản vào trang PDF
textBuilder.appendParagraph(paragraph);

// Lưu tài liệu
pdfDocument.save("Rotate_Text_TextParagraph.pdf");

Đầu ra

Xoay văn bản PDF bằng TextParagraph trong Java

Nhận giấy phép API miễn phí

Bạn có thể dùng thử miễn phí Aspose.PDF for Java bằng cách nhận giấy phép tạm thời.

Sự kết luận

Trong bài này, bạn đã học cách xoay văn bản trong PDF theo lập trình bằng Java. Chúng tôi đã trình bày cách xoay văn bản bằng cách sử dụng các lớp TextFragment và TextParagraph. Ngoài ra, bạn có thể khám phá thêm về Aspose.PDF for Java bằng cách sử dụng tài liệu. Trong trường hợp bạn có bất kỳ câu hỏi hoặc thắc mắc nào, bạn có thể liên hệ với chúng tôi qua diễn đàn của chúng tôi.

Xem thêm