โดยทำตามคำแนะนำในบทความนี้ เพิ่มสารบัญลงใน PDF โดยใช้ Java รับรายละเอียดทั้งหมดเพื่อตั้งค่าสภาพแวดล้อมการพัฒนา ตรรกะของโปรแกรมเป็นขั้นตอน และโค้ดตัวอย่างเพื่อ เพิ่มสารบัญที่คลิกได้ลงใน PDF โดยใช้ Java คุณจะได้เรียนรู้การปรับแต่งต่างๆ ที่เกี่ยวข้องกับสารบัญในไฟล์ PDF
ขั้นตอนในการสร้างสารบัญในรูปแบบ PDF โดยใช้ Java
- ตั้งค่า IDE เพื่อใช้ Aspose.PDF for Java เพื่อเพิ่มสารบัญที่จุดเริ่มต้น
- โหลดไฟล์ PDF ลงในออบเจ็กต์ Document รับจำนวนหน้าทั้งหมดและแทรกหน้าใหม่ที่จุดเริ่มต้นของ PDF
- ใช้ TocInfo และ TextFragment เพื่อกำหนดคุณสมบัติของสารบัญ
- สร้างรายการสตริงที่มีข้อความส่วนหัวสำหรับ TOC
- วนซ้ำหน้าต่างๆ ของ PDF และเพิ่มหนึ่งรายการใน TOC สำหรับแต่ละหน้าในไฟล์ PDF
- เชื่อมโยงหน้าที่เกี่ยวข้องกับรายการใน TOC และตั้งค่าพิกัดปลายทางบนหน้าที่เชื่อมโยง
- บันทึกไฟล์ PDF เอาต์พุตที่มี TOC ในหน้าแรก
ขั้นตอนเหล่านี้กำหนดกระบวนการ สร้างสารบัญที่สามารถคลิกได้ในรูปแบบ PDF โดยใช้ Java เริ่มต้นกระบวนการโดยการโหลดไฟล์ PDF รับจำนวนหน้า และประกาศและกำหนดค่าออบเจ็กต์ TocInfo เพื่อตั้งค่าคุณสมบัติของสารบัญ แยกวิเคราะห์หน้าทั้งหมดในไฟล์ PDF เพิ่มรายการใน TOC พร้อมไฮเปอร์ลิงก์สำหรับแต่ละหน้า ตั้งค่าข้อความลิงก์ และกำหนดพิกัดของหน้าซึ่งการควบคุมจะย้ายเมื่อเราคลิกรายการในสารบัญ
รหัสเพื่อเพิ่มสารบัญในรูปแบบ PDF โดยใช้ Java
import com.aspose.pdf.*; | |
import java.util.ArrayList; | |
import java.util.List; | |
public class Main | |
{ | |
public static void main(String[] args) throws Exception // Create TOC in PDF in Java | |
{ | |
// Set the licenses | |
new License().setLicense("License.lic"); | |
// Load the pdf document | |
Document inputDoc = new Document("Document1.pdf"); | |
// Get count of pages in the PDF | |
int count = inputDoc.getPages().size(); | |
// Insert a page for table of contents | |
Page pageTOC = inputDoc.getPages().insert(1); | |
// Instantiate an object of TocInfo for TOC information | |
TocInfo tocInfo = new TocInfo(); | |
// Create an object of TextFragment for setting TOC title | |
TextFragment title = new TextFragment("Table Of Contents"); | |
title.getTextState().setFontSize(20); | |
// Set the title for Table of contents | |
tocInfo.setTitle(title); | |
pageTOC.setTocInfo(tocInfo); | |
// Create a list of strings for TOC | |
List<String> tocTitles = new ArrayList<String>(); | |
for(int j = 1; j <= count; j++) | |
tocTitles.add("Page " + (j + 1)); | |
int i = 0; | |
while (i < count) | |
{ | |
// Instantiate an object of the Heading class | |
Heading heading = new Heading(1); | |
TextSegment textSegment = new TextSegment(); | |
heading.setTocPage(pageTOC); | |
heading.getSegments().add(textSegment); | |
// Set the destination page for the heading object | |
heading.setDestinationPage(inputDoc.getPages().get_Item(i + 2)); | |
// Set the destination coordinates for TOC item | |
heading.setTop(inputDoc.getPages().get_Item(i + 2).getRect().getHeight()); | |
// Set TOC item text | |
textSegment.setText(tocTitles.get(i)); | |
// Add heading to the TOC page | |
pageTOC.getParagraphs().add(heading); | |
i += 1; | |
} | |
// Save PDF Document | |
inputDoc.save("TOC.pdf"); | |
System.out.println("Done"); | |
} | |
} |
บทความนี้สอนเรา วิธีเพิ่มสารบัญในรูปแบบ PDF โดยใช้ Java หากต้องการเพิ่มส่วนหัวและส่วนท้ายใน PDF โปรดดูบทความเกี่ยวกับ วิธีเพิ่มส่วนหัวและส่วนท้ายใน PDF โดยใช้ Java