Забудьте обсуждать содержание документов и отзывы в длинных ветках электронной почты. Просто используйте аннотации для разметки документов с сообщениями и ответами. В этой статье вы узнаете, как программно добавлять и удалять аннотации для разметки документов Word на C# с помощью приложений .NET.

Ниже приведены темы, кратко обсуждаемые ниже:

.NET API для аннотирования и разметки файлов Word

GroupDocs.Annotation предоставляет .NET API для работы с аннотациями к вашим документам и изображениям в ваших приложениях .NET. API позволяет добавлять, удалять и извлекать аннотации из документов Word. Кроме того, он поддерживает электронные таблицы, презентации, изображения, файлы PDF, веб-страницы, сообщения электронной почты, рисунки Visio. Некоторые чертежи AutoCAD и форматы цифровых изображений, такие как DICOM, также включены в список. Полный список поддерживаемых форматов документов для аннотаций можно найти в документации.

Загрузите установщик DLL или MSI из раздела загрузок или установите API в свое приложение .NET с помощью NuGet. Вы также можете использовать следующую команду из диспетчера пакетов.

PM> Install-Package GroupDocs.Annotation

Добавление аннотаций в Word на C#

Давайте добавим несколько различных видов аннотаций к документам Word. Существует множество различных типов аннотаций, поэтому в этой статье мы рассмотрим лишь некоторые из них.

Добавьте аннотации в DOC DOCX с помощью API GroupDocs

Существует несколько поддерживаемых типов аннотаций, вы можете узнать о каждой аннотации отдельно.

  • Аннотации области/прямоугольника
  • Стрелка
  • Подчеркнуть
  • Водяной знак
  • Расстояние
  • Зачеркивание
  • Текстовое поле
  • Эллипс
  • Выделять
  • Ссылка на сайт
  • Точка
  • Полилиния
  • Замена
  • Редактирование ресурсов
  • Редактирование текста

Добавить аннотацию со стрелкой в Word с помощью C#

Ниже приведены шаги по добавлению аннотации стрелки в документ Word на C#.

Добавление аннотации стрелки программно в Java и .NET
  • Загрузите документ с помощью класса Annotator.
  • Инициализируйте аннотацию со стрелкой с помощью класса ArrowAnnotation.
  • Отрегулируйте положение, размер, номер страницы аннотации стрелки.
  • Добавьте созданную стрелочную аннотацию методом Добавить.
  • Сохраните аннотированный документ Word по пути, используя метод Сохранить.

В следующем примере кода показано, как добавить аннотацию со стрелкой в документ Word с помощью C#.

// Добавьте аннотацию со стрелкой в документы Word с помощью C#
using (Annotator annotator = new Annotator("path/document.docx"))
{
    ArrowAnnotation arrow = new ArrowAnnotation
    {
        Box = new Rectangle(100, 100, 50, 50),
        CreatedOn = DateTime.Now,
        Message = "Your Message",
        Opacity = 0.7,
        PageNumber = 0,
        PenColor = -3407872,
        PenStyle = PenStyle.Solid,
        PenWidth = 2
    };
    annotator.Add(arrow);
    annotator.Save("path/annotation.docx");
}

Вставьте аннотацию прямоугольника или области в Word с помощью С#

Любую аннотацию можно настроить при ее добавлении в документ. Ниже приведены шаги по добавлению аннотации прямоугольника или области к документу DOC/DOCX с некоторыми настройками. Это очень похоже на добавление аннотаций Arrow, но на этот раз использует класс AreaAnnotation.

  • Загрузите документ DOC/DOCX, используя класс Annotator.
  • Инициализировать прямоугольную аннотацию с помощью класса AreaAnnotation.
  • Отрегулируйте положение, размер и цвет прямоугольника.
  • Установите другие свойства, такие как номер страницы, фон, непрозрачность, стиль, толщина пера, сообщения и время.
  • Добавьте аннотацию созданного прямоугольника в Annotator.
  • Сохраните аннотированный файл по пути, используя метод Сохранить.
Программное добавление аннотации прямоугольника или области в .NET и Java

В следующем примере кода показано, как добавить аннотацию прямоугольника/области в документ Word с помощью C#.

// Добавление аннотации области или прямоугольника в документы Word с помощью C#
using (Annotator annotator = new Annotator("path/document.docx"))
{
    AreaAnnotation area = new AreaAnnotation
    {
        BackgroundColor = 65535,
        Box = new Rectangle(80, 75, 450, 135),
        Message = "This is area annotation",
        Opacity = 0.2,
        PageNumber = 0,
        PenColor = -131,
        PenStyle = PenStyle.Dash,
        PenWidth = 3
    };
    annotator.Add(area);
    annotator.Save("path/annotation.docx");
}

Добавьте аннотацию овала или эллипса в Word с помощью C#

Ниже приведены шаги по добавлению овальной или эллиптической аннотации в документ на C#.

Добавление эллипсов или овальных аннотаций программно в C# .NET и Java
  • Загрузите документ DOC/DOCX, используя класс Annotator.
  • Инициализируйте аннотацию эллипса с помощью класса EllipseAnnotation.
  • Установите положение и размер инициализированной аннотации эллипса.
  • Добавьте созданную аннотацию в виде эллипса к объекту Annotator.
  • Укажите путь и сохраните аннотированный файл Word, используя метод Сохранить.

В следующем примере кода показано, как добавить овальную или эллипсную аннотацию в документ Word с помощью C#.

// Добавьте аннотацию овала или эллипса в документы Word с помощью C#
using (Annotator annotator = new Annotator("path/document.docx"))
{
    EllipseAnnotation ellipse = new EllipseAnnotation
    {
        BackgroundColor = -16034924,
        Box = new Rectangle(275, 475, 300, 80),
        Message = "This is ellipse annotation",
        Opacity = 0.2,
        PageNumber = 0,
        PenColor = -16034924,
        PenStyle = PenStyle.Dot,
        PenWidth = 3
    };
    annotator.Add(ellipse);
    annotator.Save("path/annotation.docx");
}

Вставьте аннотацию расстояния в Word с помощью C#

Точно так же вы можете добавить аннотацию расстояния, чтобы отметить расстояние между двумя точками. Ниже приведены шаги для добавления аннотации расстояния в документ.

Программное добавление аннотации расстояния в C# .NET и Java
  • После загрузки документа Word инициализируйте аннотацию расстояния с помощью класса DistanceAnnotation.
  • Установить внешний вид аннотации.
  • Добавьте аннотацию расстояния к объекту Annotator.
  • Сохраните аннотированные файлы Word в заданном месте, указав путь.

В следующем примере кода показано, как добавить аннотацию расстояния в документ DOC/DOCX с помощью C#.

// Добавление аннотации Distance к документам Word с помощью C#
using (Annotator annotator = new Annotator("path/document.docx"))
{
    DistanceAnnotation distance = new DistanceAnnotation
    {
        Box = new Rectangle(750, 235, 0, 150),
        Message = "This is the heading area",
        Opacity = 0.7,
        PageNumber = 0,
        PenColor = -21197,
        PenStyle = PenStyle.Solid,
        PenWidth = 3
    };
    annotator.Add(distance);
    annotator.Save("path/annotation.docx");
}

Полный код

Подводя итог, вот полный код с выводом, показывающим все добавленные аннотации и сообщения с ответами. Приведенный ниже код C# добавляет стрелку, прямоугольник, эллипс, аннотации расстояния, сообщения и ответы в файл Word.

// Добавьте несколько аннотаций в Word с помощью C#
// Добавление аннотаций Arrow, Area, Oval (Ellipse), Distance к DOC/DOCX с сообщениями и ответами с использованием C#
string outputPath = @"outputPath/annotatedDoc.docx";
string inputFile = @"inputPath/document.docx";

using (Annotator annotator = new Annotator(inputFile))
{
    ArrowAnnotation arrow = new ArrowAnnotation
    {
        Box = new Rectangle(550, 250, 60, -60),
        CreatedOn = DateTime.Now,
        Message = "This image is little upwards.",
        Opacity = 0.7,
        PageNumber = 0,
        PenColor = -3407872,
        PenStyle = PenStyle.Solid,
        PenWidth = 2,
        Replies = new List<Reply>
        {
            new Reply
            {
                Comment = "Please look in to these issues.",
                RepliedOn = DateTime.Now
            },
            new Reply
            {
                    Comment = "Change Description",
                RepliedOn = DateTime.Now
            },
            new Reply
            {
                Comment = "On-Premises APIs",
                RepliedOn = DateTime.Now
            },
            new Reply
            {
                Comment = "Add images as well.",
                RepliedOn = DateTime.Now
            }
        }
    };
    AreaAnnotation area = new AreaAnnotation
    {
        BackgroundColor = 65535,
        Box = new Rectangle(80, 75, 450, 135),
        Message = "This is area annotation",
        Opacity = 0.2,
        PageNumber = 0,
        PenColor = -131,
        PenStyle = PenStyle.Dash,
        PenWidth = 3
    };
    EllipseAnnotation ellipse = new EllipseAnnotation
    {
        BackgroundColor = -16034924,
        Box = new Rectangle(275, 475, 300, 80),
        Message = "This is ellipse annotation",
        Opacity = 0.2,
        PageNumber = 0,
        PenColor = -16034924,
        PenStyle = PenStyle.Dot,
        PenWidth = 3
    };
    DistanceAnnotation distance = new DistanceAnnotation
    {
        Box = new Rectangle(750, 235, 0, 150),
        Message = "This is the heading area",
        Opacity = 0.7,
        PageNumber = 0,
        PenColor = -21197,
        PenStyle = PenStyle.Solid,
        PenWidth = 3
    };
    annotator.Add(arrow);
    annotator.Add(area);
    annotator.Add(ellipse);
    annotator.Add(distance);

    annotator.Save(outputPath);
}

Удалить аннотации из файлов Word DOC/DOCX с помощью C#

Аннотации из документов можно легко удалить. Существует множество вариантов удаления аннотаций из документа Word. Вы можете удалить все аннотации сразу. Кроме того, вы можете указать индексы для удаления определенных аннотаций. Дополнительные параметры см. в статье документация.

Ниже приведены шаги по удалению всех аннотаций из файла Word.

  • Загрузите документ.
  • Инициализировать параметры сохранения с помощью класса SaveOptions.
  • Установите типы аннотаций на None.
  • Сохраните файл Word. В нем не будет аннотации.

В следующем коде показано, как удалить аннотации из файла Word с помощью C#.

// Удалите все аннотации из документа Word с помощью С#
using (Annotator annotator = new Annotator(outputPath))
{
    annotator.Save(remOutputPath, new SaveOptions {AnnotationTypes = AnnotationType.None});
}

Вывод

Короче говоря, вы узнали, как добавлять аннотации к документам Word в приложениях .NET с помощью C#. В частности, мы добавили аннотации в виде стрелок, эллипсов, областей и расстояний в файл Word DOC/DOCX. Кроме того, вы также видели, как удалить все аннотации из любого файла Word. Теперь вы можете подумать о создании собственного приложения .NET для комментирования документов.

Узнайте больше о GroupDocs.Annotation для .NET из документации и репозитория GitHub. По дополнительным вопросам обращайтесь в службу поддержки на форуме.

Смотрите также