หมุนข้อความภายในเอกสาร PDF ใน Java

PDF เป็นรูปแบบเอกสารข้ามแพลตฟอร์มที่ให้เค้าโครงที่สอดคล้องกันในระบบปฏิบัติการต่างๆ มีการใช้กันอย่างแพร่หลายในการสร้างและแบ่งปันเอกสาร เช่น บทความวิจัย ใบแจ้งหนี้ ฯลฯ ในขณะที่สร้างไฟล์ PDF โดยทางโปรแกรม คุณมักจะต้องเปลี่ยนตำแหน่งและการวางแนวของข้อความตามเค้าโครงของเอกสาร ในบทความนี้ เราจะแสดงวิธีการหมุนข้อความภายในเอกสาร PDF ใน Java

Java API เพื่อหมุนข้อความใน PDF

ในการหมุนข้อความภายในไฟล์ PDF เราจะใช้ Aspose.PDF for Java เป็นไลบรารีอันทรงพลังที่ให้คุณสมบัติการจัดการ PDF ขั้นพื้นฐานและขั้นสูง คุณสามารถ ดาวน์โหลด API หรือติดตั้งโดยใช้การกำหนดค่า Maven ต่อไปนี้

พื้นที่เก็บข้อมูล:

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

การพึ่งพา:

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

หมุนข้อความภายใน PDF ใน Java

มีหลายวิธีในการหมุนข้อความภายในเอกสาร PDF คุณสามารถหมุนส่วนของข้อความหรือทั้งย่อหน้าก็ได้ มาดูกันว่าการหมุนข้อความแต่ละครั้งทำงานอย่างไร

การหมุนข้อความ PDF โดยใช้ TextFragment ใน Java

ต่อไปนี้เป็นขั้นตอนในการหมุนส่วนข้อความในเอกสาร PDF โดยใช้ Java

  • ขั้นแรก สร้างเอกสารใหม่โดยใช้คลาส Document
  • จากนั้น เพิ่มหน้าในเอกสารและรับข้อมูลอ้างอิงโดยใช้เมธอด Document.getPages().add()
  • หลังจากนั้น สร้างส่วนข้อความใหม่โดยใช้คลาส TextFragment
  • กำหนดตำแหน่งและแบบอักษรของส่วนข้อความ
  • ตั้งค่ามุมการหมุนโดยใช้เมธอด TextFragment.getTextState().setRotation()
  • สร้างวัตถุ TextBuilder ใหม่และเริ่มต้นด้วยวัตถุหน้า
  • ใช้เมธอด TextBuilder.appendText(TextFragment) เพื่อเพิ่มข้อความลงในเพจ
  • สุดท้าย บันทึกเอกสาร PDF โดยใช้วิธี Document.save(string)

ตัวอย่างโค้ดต่อไปนี้แสดงวิธีการหมุนข้อความในเอกสาร PDF ใน Java

// เริ่มต้นวัตถุเอกสาร
Document pdfDocument = new Document();

// รับเฉพาะหน้า
Page pdfPage = pdfDocument.getPages().add();

// สร้างส่วนข้อความ
TextFragment textFragment1 = new TextFragment("main text");
textFragment1.setPosition(new Position(100, 600));

// ตั้งค่าคุณสมบัติข้อความ
textFragment1.getTextState().setFontSize(12);
textFragment1.getTextState().setFont(FontRepository.findFont("TimesNewRoman"));

// สร้างส่วนข้อความที่หมุน
TextFragment textFragment2 = new TextFragment("rotated text");
textFragment2.setPosition(new Position(200, 600));
// ตั้งค่าคุณสมบัติข้อความ
textFragment2.getTextState().setFontSize(12);
textFragment2.getTextState().setFont(FontRepository.findFont("TimesNewRoman"));
textFragment2.getTextState().setRotation(45);

// สร้างส่วนข้อความที่หมุน
TextFragment textFragment3 = new TextFragment("rotated text");
textFragment3.setPosition(new Position(300, 600));

// ตั้งค่าคุณสมบัติข้อความ
textFragment3.getTextState().setFontSize(12);
textFragment3.getTextState().setFont(FontRepository.findFont("TimesNewRoman"));
textFragment3.getTextState().setRotation(90);

// สร้างวัตถุ TextBuilder
TextBuilder textBuilder = new TextBuilder(pdfPage);

// ต่อท้ายส่วนข้อความในหน้า PDF
textBuilder.appendText(textFragment1);
textBuilder.appendText(textFragment2);
textBuilder.appendText(textFragment3);

// บันทึกเอกสาร
pdfDocument.save("Rotate_Text_TextFragment.pdf");

เอาต์พุต

การหมุนข้อความ PDF โดยใช้ TextFragment ใน Java

การหมุนข้อความ PDF โดยใช้ TextParagraph ใน Java

คุณยังสามารถใช้การหมุนกับข้อความในขณะที่สร้างย่อหน้าใหม่ได้อีกด้วย สามารถทำได้โดยใช้คลาส TextParagraph ต่อไปนี้เป็นขั้นตอนในการใช้การหมุนข้อความโดยใช้คลาส TextParagraph

  • ขั้นแรก สร้างเอกสารใหม่โดยใช้คลาส Document
  • จากนั้น เพิ่มหน้าในเอกสารและรับข้อมูลอ้างอิงโดยใช้เมธอด Document.getPages().add()
  • หลังจากนั้น สร้างวัตถุ TextParagraph ใหม่
  • สร้างส่วนข้อความใหม่โดยใช้คลาส TextFragment และตั้งค่าข้อความและแบบอักษร
  • ตั้งค่ามุมการหมุนโดยใช้เมธอด TextFragment.getTextState().setRotation()
  • เพิ่มข้อความในย่อหน้าโดยใช้เมธอด TextParagraph.appendLine(TextFragment)
  • สร้างวัตถุ TextBuilder ใหม่และเริ่มต้นด้วยวัตถุหน้า
  • ใช้เมธอด TextBuilder.appendParagraph(TextParagraph) เพื่อเพิ่มย่อหน้าลงในหน้า
  • สุดท้าย บันทึกเอกสาร PDF โดยใช้วิธี Document.save(string)

ตัวอย่างโค้ดต่อไปนี้แสดงวิธีการหมุนข้อความภายในย่อหน้าใน PDF โดยทางโปรแกรม

// เริ่มต้นวัตถุเอกสาร
Document pdfDocument = new Document();

// รับเฉพาะหน้า
Page pdfPage = (Page) pdfDocument.getPages().add();

// สร้างย่อหน้าข้อความ
TextParagraph paragraph = new TextParagraph();
paragraph.setPosition(new Position(200, 600));

// สร้างส่วนข้อความ
TextFragment textFragment1 = new TextFragment("rotated text");

// ตั้งค่าคุณสมบัติข้อความ
textFragment1.getTextState().setFontSize(12);
textFragment1.getTextState().setFont(FontRepository.findFont("TimesNewRoman"));

// ตั้งค่าการหมุน
textFragment1.getTextState().setRotation(45);

// สร้างส่วนข้อความ
TextFragment textFragment2 = new TextFragment("main text");

// ตั้งค่าคุณสมบัติข้อความ
textFragment2.getTextState().setFontSize(12);
textFragment2.getTextState().setFont(FontRepository.findFont("TimesNewRoman"));

// สร้างส่วนข้อความ
TextFragment textFragment3 = new TextFragment("another rotated text");

// ตั้งค่าคุณสมบัติข้อความ
textFragment3.getTextState().setFontSize(12);
textFragment3.getTextState().setFont(FontRepository.findFont("TimesNewRoman"));

// ตั้งค่าการหมุน
textFragment3.getTextState().setRotation(-45);

// ผนวกส่วนข้อความต่อท้ายย่อหน้า
paragraph.appendLine(textFragment1);
paragraph.appendLine(textFragment2);
paragraph.appendLine(textFragment3);

// สร้างวัตถุ TextBuilder
TextBuilder textBuilder = new TextBuilder(pdfPage);

// ต่อท้ายย่อหน้าข้อความในหน้า PDF
textBuilder.appendParagraph(paragraph);

// บันทึกเอกสาร
pdfDocument.save("Rotate_Text_TextParagraph.pdf");

เอาต์พุต

การหมุนข้อความ PDF โดยใช้ TextParagraph ใน Java

รับใบอนุญาต API ฟรี

คุณสามารถลองใช้ Aspose.PDF for Java ได้ฟรีโดย ขอรับใบอนุญาตชั่วคราว

บทสรุป

ในบทความนี้ คุณได้เรียนรู้วิธีหมุนข้อความใน PDF โดยทางโปรแกรมโดยใช้ Java เราได้กล่าวถึงวิธีการหมุนข้อความโดยใช้คลาส TextFragment และ TextParagraph นอกจากนี้ คุณสามารถสำรวจเพิ่มเติมเกี่ยวกับ Aspose.PDF for Java โดยใช้ เอกสารประกอบ ในกรณีที่คุณมีคำถามหรือข้อสงสัย คุณสามารถติดต่อเราผ่านทาง ฟอรัม

ดูสิ่งนี้ด้วย