Робота з коментарями

Aspose.Words дозволяє користувачам працювати з коментарями – коментарі в документі в документі Aspose.Words представлені Comment клас. Також використовуйте CommentRangeStart і CommentRangeEnd класи вказати область тексту, який повинен бути пов’язаний з коментарем.

Додати коментар

Aspose.Words дозволяє додати коментарі в кілька способів:

1,1 км Використання Comment клас 2,2 км Використання CommentRangeStart і CommentRangeEnd Заняття

Приклад наступного коду показує, як додати коментар до абзацу за допомогою абзацу Comment клас:

Приклад наступного коду показує, як додати коментар до абзацу за допомогою регіону тексту та CommentRangeStart і CommentRangeEnd класи:

Вилучення або видалення коментарів

Використання коментарів у документі Word (на додаток до змін відстеження) є спільною практикою при перегляді документів, зокрема, коли є кілька рецензентів. Ви можете бути ситуації, де потрібно тільки від документа. Скажіть, що ви хочете створити список знайдених відгуків, або, можливо, ви зібрали всю корисну інформацію з документа і ви просто хочете видалити непотрібні коментарі. Ви можете переглянути або видалити коментарі конкретного рецензента.

У цьому прикладі ми розглянемо деякі прості методи збору інформації з коментарів в документі та для видалення коментарів з документа. Зокрема, ми покриємо, як:

  • Витяг всіх коментарів з документа або тільки тих, хто зробив автор.
  • Видаліть всі коментарі з документа або тільки з певного автора.

Як видалити або видалити Коментарі

Код в цьому прикладі фактично досить простий і всі методи базуються на тому ж підході. Коментар у документі Word представлений Comment об’єкт в Aspose.Words модель об’єкта документа. Щоб зібрати всі коментарі в документі використовуйте get_child_nodes метод з параметром першого параметра NodeType.COMMENTй Переконайтеся, що другий параметр JavaScript licenses API Веб-сайт Go1.13.8 метод встановлюється до true: це змушує JavaScript licenses API Веб-сайт Go1.13.8 щоб вибрати з усіх дочірньих вузлів, які рекурсують, а не тільки збираючи безпосередні діти.

Щоб ілюструвати, як витягти і видалити коментарі з документа, ми пройдемо наступні кроки:

1,1 км Відкрийте документ Word за допомогою документа Document клас 1,1 км Отримати всі коментарі з документа в збірку 1,1 км Для отримання коментарів:

  1. Зайдіть через збір за допомогою оператора
  2. Витяг та список імені автора, дати та часу та тексту всіх коментарів
  3. Витяг та список імені автора, дати та часу та тексту коментарів, написаних конкретним автором, в цьому випадку автор “ks” 1,1 км Для видалення коментарів:
  4. Повернутися через збір за допомогою оператора
  5. Видалити коментарі 1,1 км Збережіть зміни

Як витягти всі коментарі

Про нас get_child_nodes метод дуже корисний і ви можете використовувати його кожен раз, коли потрібно отримати список вузлів документів будь-якого типу. Отримана збірка не створює безпосередній наклад, тому що вершини вибираються в цю колекцію тільки тоді, коли ви обробляєте або доступ до предметів в ній.

Наприклад, наступний код показує, як витягти ім’я автора, дату та текст всіх коментарів у документі:

Як витягти Коментарі Визначеного автора

Після вибраного Comment Витягувати інформацію, яку потрібно. У цьому прикладі автор ініціюється, дата, час і звичайний текст коментара поєднується в один рядок; ви можете вибрати, щоб зберігати його в деяких інших варіантах замість.

Перевантажений метод, який видобуває Коментарі з певного автора, майже той же, він просто перевіряє назву автора перед додаванням інформації в масив.

Наприклад, наступний код показує, як витягти ім’я автора, дату та час і текст коментарів за вказаним автором:

Як видалити коментарі

Якщо ви ви видалите всі коментарі, не потрібно переходити через збірне видалення коментарів по одному; ви можете видалити їх, викликаючи clear на збірках коментарів.

Приклад коду показує, як видалити всі коментарі в документі:

Коли потрібно вибрати для видалення коментарів, процес стає більш схожим на код, який ми використовували для видобутку коментарів.

Приклад коду показує, як видалити коментарі за вказаним автором:

Головний момент виділити тут – використання оператора. На відміну від простого видобутку, тут ви хочете видалити коментар. Підійде підказка - це зробити збірку назад з останнього Comment до першого. Причина цього, якщо ви починаєте з кінця і переходите назад, індекс передових елементів залишається незмінним, і ви можете працювати назад до першого елемента в колекції.

Приклад коду показує методи вилучення та видалення коментарів:

Як видалити коментар між CommentRangeStart і коментарRangeEnd

Використання Aspose.Words Ви також можете видалити коментарі між CommentRangeStart і CommentRangeEnd вершини.

Приклад наступного коду показує, як видалити текст між CommentRangeStart і CommentRangeEnd:

# Open the document.
doc = aw.Document(docs_base.my_dir + "Comments.docx")

commentStart = doc.get_child(aw.NodeType.COMMENT_RANGE_START, 0, True).as_comment_range_start()
commentEnd = doc.get_child(aw.NodeType.COMMENT_RANGE_END, 0, True).as_comment_range_end()

currentNode = commentStart
isRemoving = True
while (currentNode != None and isRemoving) :
    if (currentNode.node_type == aw.NodeType.COMMENT_RANGE_END) :
        isRemoving = False

    nextNode = currentNode.next_pre_order(doc)
    currentNode.remove()
    currentNode = nextNode

# Save the document.
doc.save(docs_base.artifacts_dir + "WorkingWithComments.remove_region_text.docx")

Додати або видалити коментар відповідь

Про нас add_reply метод додає відповідь на цей коментар. Будь ласка, зауважте, що через наявний Microsoft У документі допускається лише 1 рівень відповідей. Виняток типу InvalidOperationException буде піднятися, якщо цей метод називається на існуючий коментар відповідь.

Ви можете використовувати remove_reply спосіб видалити зазначену відповідь на цей коментар.

Приклад наступного коду показує, як додати відповідь на коментар і видалити відповідь коментаря:

Читайте коментар відповідь

Про нас replies повернення майна Comment об’єкти, які є безпосередніми дітьми зазначеного коментаря.

Наприклад, наступний код показує, як ітерувати відповіді коментаря та вирішувати їх: