Оглавление
Установлено через NuGet
PM> Install-Package Spire.Doc
Ссылки по теме
Функция комментариев в Microsoft Word предоставляет людям отличный способ добавить свои идеи или мнения в документ Word без необходимости изменять или прерывать содержимое документа. Если кто-то комментирует документ, автор документа или другие пользователи могут ответить на комментарий, чтобы обсудить с ним, даже если они не просматривают документ одновременно. В этой статье будет показано, как добавлять, отвечать на комментарии или удалять комментарии в Word на C# и VB.NET с помощью библиотеки Spire.Doc for .NET.
- Добавление комментария к абзацу в Word на C# и VB.NET
- Добавление комментария к тексту в Word на C# и VB.NET
- Ответ на комментарий в Word на C# и VB.NET
- Удаление комментариев в Word на C# и VB.NET
Установите Spire.Doc for .NET
Для начала вам необходимо добавить файлы DLL, включенные в пакет Spire.Doc for .NET, в качестве ссылок в ваш проект .NET. Файлы DLL можно загрузить по этой ссылке или установить через NuGet.
PM> Install-Package Spire.Doc
Добавление комментария к абзацу в Word на C# и VB.NET
Spire.Doc for .NET предоставляет метод Paragraph.AppendComment() для добавления комментария к определенному абзацу. Ниже приведены подробные шаги:
- Инициализируйте экземпляр класса Document.
- Загрузите документ Word с помощью метода Document.LoadFromFile().
- Доступ к определенному разделу документа по его индексу через свойство Document.Sections[int].
- Доступ к определенному абзацу раздела по его индексу через свойство Раздел.Параграфы[int].
- Добавьте комментарий к абзацу, используя метод Paragraph.AppendComment().
- Установите автора комментария через свойство Comment.Format.Author.
- Сохраните полученный документ с помощью метода Document.SaveToFile().
- C#
- VB.NET
using Spire.Doc;
using Spire.Doc.Documents;
using Spire.Doc.Fields;
namespace AddComments
{
internal class Program
{
static void Main(string[] args)
{
//Initialize an instance of the Document class
Document document = new Document();
//Load a Word document
document.LoadFromFile(@"Sample.docx");
//Get the first section in the document
Section section = document.Sections[0];
//Get the first paragraph in the section
Paragraph paragraph = section.Paragraphs[0];
//Add a comment to the paragraph
Comment comment = paragraph.AppendComment("This comment is added using Spire.Doc for .NET.");
//Set comment author
comment.Format.Author = "Eiceblue";
comment.Format.Initial = "CM";
//Save the result document
document.SaveToFile("AddCommentToParagraph.docx", FileFormat.Docx2013);
document.Close();
}
}
}

Добавление комментария к тексту в Word на C# и VB.NET
Метод Paragraph.AppendComment() используется для добавления комментариев ко всему абзацу. По умолчанию знаки комментариев будут размещены в конце абзаца. Чтобы добавить комментарий к определенному тексту, вам необходимо выполнить поиск текста с помощью метода Document.FindString(), а затем разместить метки комментариев в начале и конце текста. Ниже приведены подробные шаги:
- Инициализируйте экземпляр класса Document.
- Загрузите документ Word с помощью метода Document.LoadFromFile().
- Найдите определенный текст в документе, используя метод Document.FindString().
- Создайте метку начала комментария и метку конца комментария, которые будут размещены в начале и конце найденного текста соответственно.
- Инициализируйте экземпляр класса Comment, чтобы создать новый комментарий. Затем укажите содержание и автора комментария.
- Получите владелец абзаца найденного текста. Затем добавьте комментарий к абзацу как дочерний объект.
- Вставьте метку начала комментария перед текстовым диапазоном и метку конца комментария после текстового диапазона.
- Сохраните полученный документ с помощью метода Document.SaveToFile().
- C#
- VB.NET
using Spire.Doc;
using Spire.Doc.Documents;
using Spire.Doc.Fields;
namespace AddCommentsToText
{
internal class Program
{
static void Main(string[] args)
{
//Initialize an instance of the Document class
Document document = new Document();
//Load a Word document
document.LoadFromFile(@"CommentTemplate.docx");
//Find a specific string
TextSelection find = document.FindString("Microsoft Office", false, true);
//Create the comment start mark and comment end mark
CommentMark commentmarkStart = new CommentMark(document);
commentmarkStart.Type = CommentMarkType.CommentStart;
CommentMark commentmarkEnd = new CommentMark(document);
commentmarkEnd.Type = CommentMarkType.CommentEnd;
//Create a comment and set its content and author
Comment comment = new Comment(document);
comment.Body.AddParagraph().Text = "Developed by Microsoft.";
comment.Format.Author = "Shaun";
//Get the found text as a single text range
TextRange range = find.GetAsOneRange();
//Get the owner paragraph of the text range
Paragraph para = range.OwnerParagraph;
//Add the comment to the paragraph
para.ChildObjects.Add(comment);
//Get the index of text range in the paragraph
int index = para.ChildObjects.IndexOf(range);
//Insert the comment start mark before the text range
para.ChildObjects.Insert(index, commentmarkStart);
//Insert the comment end mark after the text range
para.ChildObjects.Insert(index + 2, commentmarkEnd);
//Save the result document
document.SaveToFile("AddCommentForText.docx", FileFormat.Docx2013);
document.Close();
}
}
}

Ответ на комментарий в Word на C# и VB.NET
Чтобы добавить ответ на существующий комментарий, вы можете использовать метод Comment.ReplyToComment(). Ниже приведены подробные шаги:
- Инициализируйте экземпляр класса Document.
- Загрузите документ Word с помощью метода Document.LoadFromFile().
- Получите конкретный комментарий в документе через свойство Document.Comments[int].
- Инициализируйте экземпляр класса Comment, чтобы создать новый комментарий. Затем установите содержимое и автора комментария.
- Добавьте новый комментарий в качестве ответа на конкретный комментарий, используя метод Comment.ReplyToComment().
- Сохраните полученный документ с помощью метода Document.SaveToFile().
- C#
- VB.NET
using Spire.Doc;
using Spire.Doc.Fields;
namespace ReplyToComments
{
internal class Program
{
static void Main(string[] args)
{
//Initialize an instance of the Document class
Document document = new Document();
//Load a Word document
document.LoadFromFile(@"AddCommentToParagraph.docx");
//Get the first comment in the document
Comment comment1 = document.Comments[0];
//Create a new comment and specify its author and content
Comment replyComment1 = new Comment(document);
replyComment1.Format.Author = "Michael";
replyComment1.Body.AddParagraph().AppendText("Spire.Doc is a wonderful Word library.");
//Add the comment as a reply to the first comment
comment1.ReplyToComment(replyComment1);
//Save the result document
document.SaveToFile("ReplyToComment.docx", FileFormat.Docx2013);
document.Close();
}
}
}

Удаление комментариев в Word на C# и VB.NET
Spire.Doc for .NET предлагает метод Document.Comments.RemoveAt(int) для удаления определенного комментария из документа Word и метод Document.Comments.Clear() для удаления всех комментариев из документа Word. Ниже приведены подробные шаги:
- Инициализируйте экземпляр класса Document.
- Загрузите документ Word с помощью метода Document.LoadFromFile().
- Удалите определенный комментарий или все комментарии в документе с помощью метода Document.Comments.RemoveAt(int) или Document.Comments.Clear().
- Сохраните полученный документ с помощью метода Document.SaveToFile().
- C#
- VB.NET
using Spire.Doc;
namespace DeleteComments
{
internal class Program
{
static void Main(string[] args)
{
//Initialize an instance of the Document class
Document document = new Document();
//Load a Word document
document.LoadFromFile(@"AddCommentToParagraph.docx");
//Delete the first comment in the document
document.Comments.RemoveAt(0);
//Delete all comments in the document
//document.Comments.Clear();
//Save the result document
document.SaveToFile("DeleteComment.docx", FileFormat.Docx2013);
document.Close();
}
}
}

Подать заявку на временную лицензию
Если вы хотите удалить сообщение об оценке из сгенерированных документов или избавиться от ограничений функции, пожалуйста запросите 30-дневную пробную лицензию для себя.