การทำงานกับรายการ

รายการในเอกสารMicrosoft Wordคือชุดของคุณสมบัติการจัดรูปแบบรายการ รายการสามารถใช้ในเอกสารของคุณเพื่อจัดรูปแบบจัดเรียงและเน้นข้อความ รายการเป็นวิธีที่ดีในการจัดระเบียบข้อมูลในเอกสารและทำให้ผู้อ่านเข้าใจประเด็นสำคัญ.

แต่ละรายการสามารถมีได้ถึง 9 ระดับและคุณสมบัติการจัดรูปแบบเช่นสไตล์ตัวเลขค่าเริ่มต้น.

บทความนี้อธิบายการทำงานกับรายการโดยใช้Aspose.Words.

การสร้างรายการโดยใช้การจัดรูปแบบรายการ

Aspose.Wordsช่วยให้การสร้างง่ายของรายการโดยการใช้การจัดรูปแบบรายการ DocumentBuilderให้คุณListFormatที่ส่งกลับวัตถุListFormat วัตถุนี้มีหลายวิธีในการเริ่มต้นและสิ้นสุดรายการและการเพิ่ม/ลดการเยื้อง มีสองประเภททั่วไปของรายการในMicrosoft Word:สัญลักษณ์แสดงหัวข้อย่อยและหมายเลข:

นย่อหน้าปัจจุบันและย่อหน้าต่อไปทั้งหมดที่สร้างขึ้นโดยใช้DocumentBuilderจนกระทั่งRemoveNumbersถูกเรียกว่าเพื่อหยุดกา.

ในคำเอกสารรายการอาจประกอบด้วยถึงเก้าระดับ การจัดรูปแบบรายการสำหรับแต่ละระดับระบุสิ่งที่กระสุนหรือหมายเลขที่ใช้เยื้องซ้ายช่องว่ เมธอดต่อไปนี้เปลี่ยนระดับรายการและใช้คุณสมบัติการจัดรูปแบบของระดับใหม่:

  • หากต้องการเพิ่มระดับรายการของย่อหน้าปัจจุบันโดยหนึ่งระดับให้โทรListFormat.ListIndent
  • หากต้องการลดระดับรายการของย่อหน้าปัจจุบันโดยหนึ่งระดับให้โทรListFormat.ListOutdent

เมธอดเปลี่ยนระดับรายการและใช้คุณสมบัติการจัดรูปแบบของระดับใหม่.

ตัวอย่างรหัสต่อไปนี้แสดงวิธีการสร้างรายการหลายระดับ:

// For complete examples and data files, please go to https://github.com/aspose-words/Aspose.Words-for-Java
// The path to the documents directory.
String dataDir = Utils.getDataDir(DocumentBuilderSetMultilevelListFormatting.class);
// Open the document.
Document doc = new Document();
DocumentBuilder builder = new DocumentBuilder(doc);
builder.getListFormat().applyNumberDefault();
builder.writeln("Item 1");
builder.writeln("Item 2");
builder.getListFormat().listIndent();
builder.writeln("Item 2.1");
builder.writeln("Item 2.2");
builder.getListFormat().listIndent();
builder.writeln("Item 2.1.1");
builder.writeln("Item 2.2.2");
builder.getListFormat().listOutdent();
builder.writeln("Item 3");
builder.getListFormat().removeNumbers();
doc.save(dataDir + "output.doc");

ระบุการจัดรูปแบบสำหรับระดับรายการ

อ็อบเจ็กต์ระดับรายการจะถูกสร้างขึ้นโดยอัตโนมัติเมื่อรายการถูกสร้างขึ้น ใช้คุณสมบัติและเมธอดของคลาสของListLevelเพื่อควบคุมการจัดรูปแบบของแต่ละระดับของรายการ.

รายการรีสตาร์ทสำหรับแต่ละส่วน

คุณสามารถรีสตาร์ทรายการสำหรับแต่ละส่วนโดยใช้คุณสมบัติIsRestartAtEachSection โปรดทราบว่าตัวเลือกนี้ได้รับการสนับสนุนเฉพาะในRTF,DOCและDOCXรูปแบบเอกสาร ตัวเลือกนี้จะถูกเขียนถึงDOCXเฉพาะในกรณีที่OoxmlComplianceสูงกว่าแล้วเอ็กมา 376.

ตัวอย่างรหัสต่อไปนี้แสดงวิธีการสร้างรายการและเริ่มต้นใหม่สำหรับแต่ละส่วน:

// For complete examples and data files, please go to https://github.com/aspose-words/Aspose.Words-for-Java
Document doc = new Document();
doc.getLists().add(ListTemplate.NUMBER_DEFAULT);
com.aspose.words.List list = doc.getLists().get(0);
// Set true to specify that the list has to be restarted at each section.
list.isRestartAtEachSection(true);
DocumentBuilder builder = new DocumentBuilder(doc);
builder.getListFormat().setList(list);
for (int i = 1; i < 45; i++) {
builder.writeln(String.format("List Item " + i));
// Insert section break.
if (i == 15)
builder.insertBreak(BreakType.SECTION_BREAK_NEW_PAGE);
}
builder.getListFormat().removeNumbers();
// IsRestartAtEachSection will be written only if compliance is higher then OoxmlComplianceCore.Ecma376
OoxmlSaveOptions options = new OoxmlSaveOptions();
options.setCompliance(OoxmlCompliance.ISO_29500_2008_TRANSITIONAL);
dataDir = dataDir + "RestartAtEachSection_out.docx";
// Save the document to disk.
doc.save(dataDir, options);