Create TOC in Word

فهرست مطالب (TOC) ویژگی‌ای اساسی در اسناد ورد است، به ویژه برای اسناد طولانی مانند گزارش‌ها، پایان‌نامه‌ها و کتاب‌های الکترونیکی. این ویژگی اسناد ورد را خواناتر می‌کند و به خوانندگان این امکان را می‌دهد که به سرعت از طریق بخش‌های مختلف سند جابجا شوند. در این پست، یاد خواهید گرفت که چگونه TOC را در اسناد ورد به صورت برنامه‌نویسی با استفاده از پایتون خودکار کنید. ما مراحل ایجاد فهرست مطالب در یک سند ورد، درج TOC در سند موجود یا استخراج TOC از یک سند در پایتون را بررسی خواهیم کرد.

این مقاله به بررسی موضوعات زیر می‌پردازد:

کتابخانه پایتون ورد برای کار با TOC

برای کار با TOC در اسناد ورد با استفاده از پایتون، از کتابخانه Aspose.Words for Python استفاده خواهیم کرد. این کتابخانه به توسعه‌دهندگان این امکان را می‌دهد که اسناد ورد را در برنامه‌های پایتون ایجاد، اصلاح و خودکار کنند. بیایید با تنظیم محیط خود شروع کنیم.

قبل از شروع به کدنویسی، مطمئن شوید که Aspose.Words for Python را نصب کرده‌اید. می‌توانید پکیج را دانلود کنید یا API را از PyPI با استفاده از دستور pip زیر در ترمینال خود نصب کنید:

pip install aspose-words

این کار کتابخانه Aspose.Words for Python و وابستگی‌های آن را دانلود و نصب خواهد کرد.

ایجاد فهرست مطالب در ورد با استفاده از پایتون

لطفاً مراحل زیر را برای افزودن فهرست مطالب به یک سند ورد با استفاده از پایتون دنبال کنید.

  1. یک نمونه از کلاس Document ایجاد کنید.
  2. یک نمونه از کلاس DocumentBuilder را با شی Document ایجاد کنید.
  3. با استفاده از روش insert_table_of_contents() فهرست مطالب را وارد کنید.
  4. استایل‌های عنوان را با استفاده از ویژگی style_identifier مشخص کنید.
  5. فیلدها را با استفاده از روش update_fields() به‌روز کنید.
  6. سند ورد را با استفاده از روش save() ذخیره کنید.

نمونه کد زیر نحوه ایجاد فهرست مطالب در یک سند ورد با استفاده از پایتون را نشان می‌دهد.

# This code example shows how to add a Table of Contents in a Word document.
# Create a document
doc = aw.Document()
# Initialize a document builder
builder = aw.DocumentBuilder(doc)
# Insert table of contents
builder.insert_table_of_contents("\\o \"1-3\" \\h \\z \\u")
# Start the actual document content on the second page.
builder.insert_break(aw.BreakType.PAGE_BREAK)
builder.paragraph_format.style_identifier = aw.StyleIdentifier.HEADING1
builder.writeln("Heading 1")
builder.paragraph_format.style_identifier = aw.StyleIdentifier.HEADING2
builder.writeln("Heading 1.1")
builder.writeln("Heading 1.2")
builder.paragraph_format.style_identifier = aw.StyleIdentifier.HEADING1
builder.writeln("Heading 2")
builder.writeln("Heading 3")
builder.paragraph_format.style_identifier = aw.StyleIdentifier.HEADING2
builder.writeln("Heading 3.1")
builder.paragraph_format.style_identifier = aw.StyleIdentifier.HEADING3
builder.writeln("Heading 3.1.1")
builder.writeln("Heading 3.1.2")
builder.writeln("Heading 3.1.3")
builder.paragraph_format.style_identifier = aw.StyleIdentifier.HEADING2
builder.writeln("Heading 3.2")
builder.writeln("Heading 3.3")
# The newly inserted table of contents will be initially empty.
# It needs to be populated by updating the fields in the document.
doc.update_fields()
# Save the document
doc.save("insert_table_of_contents.docx")
Create a Table of Contents in Word using Python.

افزودن فهرست مطالب در ورد با استفاده از پایتون

ایجاد فهرست مطالب در یک سند ورد موجود

شما می‌توانید با دنبال کردن مراحل زیر، فهرست مطالب را در یک سند ورد موجود وارد کنید:

  1. سند ورد موجود را با استفاده از کلاس Document بارگذاری کنید.
  2. یک نمونه از کلاس DocumentBuilder را ایجاد کرده و آن را با شی Document ایجاد شده قبلی مقداردهی اولیه کنید.
  3. با استفاده از روش insert_table_of_contents() فهرست مطالب را وارد کنید.
  4. فیلدها را با استفاده از روش update_fields() به‌روز کنید.
  5. سند ورد را با استفاده از روش save() ذخیره کنید.

نمونه کد زیر نحوه ایجاد فهرست مطالب در یک سند ورد موجود با استفاده از پایتون را نشان می‌دهد.

# This code example shows how to insert a Table of Contents in an existing Word document.
# Load an existing Word document
doc = Document("toc_sample.docx");
builder = DocumentBuilder(doc);
# Insert a table of contents at the beginning of the document.
builder.insert_table_of_contents("\\o \"1-3\" \\h \\z \\u");
# The newly inserted table of contents will be initially empty.
# It needs to be populated by updating the fields in the document.
doc.update_fields();
# Save the document
doc.save("InsertTOC_out.docx");
Create a Table of Contents in an Existing Word Document.

ایجاد فهرست مطالب در یک سند ورد موجود

استخراج فهرست مطالب از یک سند ورد در پایتون

شما می‌توانید با دنبال کردن مراحل زیر، فیلدها را از فهرست مطالب یک سند ورد استخراج کنید:

  1. سند ورد را با استفاده از کلاس Document بارگذاری کنید.
  2. از طریق مجموعه doc.range.fields حلقه بزنید.
  3. بررسی کنید که نوع فیلد FIELD_HYPERLINK باشد.
  4. بررسی کنید که فیلد در بخش فهرست مطالب قرار داشته باشد.
  5. اطلاعات را از فیلد بازیابی کرده و چاپ کنید.

نمونه کد زیر نحوه استخراج فهرست مطالب از یک سند ورد با استفاده از پایتون را نشان می‌دهد.

# This code example shows how to extract a Table of Contents from a Word document.
# Load an existing Word document
doc = aw.Document(InsertTOC_out.docx")
# Loop through all the fields
for field in doc.range.fields:
# Check if it is FIELD_HYPERLINK
if (field.type == aw.fields.FieldType.FIELD_HYPERLINK):
hyperlink = field.as_field_hyperlink()
# Check if it in TOC section
if (hyperlink.sub_address != None and hyperlink.sub_address.find("_Toc") == 0):
tocItem = field.start.get_ancestor(aw.NodeType.PARAGRAPH).as_paragraph()
print(tocItem.to_string(aw.SaveFormat.TEXT).strip())
print("------------------")
# Print
bm = doc.range.bookmarks.get_by_name(hyperlink.sub_address)
pointer = bm.bookmark_start.get_ancestor(aw.NodeType.PARAGRAPH).as_paragraph()
print(pointer.to_string(aw.SaveFormat.TEXT))
Heading 1       1
------------------
Heading 1

Heading2        1
------------------
Heading2

Another Heading 1
------------------
Another Heading

دریافت مجوز رایگان

شما می‌توانید یک مجوز موقت رایگان دریافت کرده و فهرست مطالب را در اسناد ورد بدون محدودیت‌های ارزیابی ایجاد کنید.

TOC در ورد – منابع رایگان

  • بخش کار با فهرست مطالب از مستندات رسمی را مطالعه کنید تا بیشتر در مورد افزودن، به‌روزرسانی یا حذف TOC در ورد بیاموزید.

علاوه بر کار با TOC در اسناد ورد، ویژگی‌های بیشتری از Aspose.Words for Python را با استفاده از منابع زیر بررسی کنید:

نتیجه‌گیری

در این مقاله، یاد گرفتید که چگونه به طور برنامه‌نویسی با فهرست مطالب (TOC) در یک سند ورد کار کنید. با دنبال کردن مراحل outlined در این مقاله، می‌توانید فرآیند ایجاد ومدیریت اسناد طولانی را خودکار کنید. Aspose.Words for Python به شما این امکان را می‌دهد که به طور مؤثر اسناد ورد خود را مدیریت کرده و قابلیت استفاده آن‌ها را با یک فهرست مطالب ساختارمند افزایش دهید. اگر سوالی دارید یا به کمک بیشتری نیاز دارید، لطفاً با ما در تالار پشتیبانی رایگان تماس بگیرید.

همچنین ببینید