Olvídese de discutir el contenido de los documentos y los comentarios en largas cadenas de correo electrónico. Simplemente use anotaciones para marcar documentos con mensajes y respuestas. En este artículo, aprenderá cómo agregar y quitar anotaciones mediante programación para marcar documentos de Word en C# con sus aplicaciones .NET.

Los siguientes son los temas tratados brevemente a continuación:

.NET API para anotar y marcar archivos de Word

GroupDocs.Annotation proporciona la API de .NET para trabajar con las anotaciones de sus documentos e imágenes dentro de sus aplicaciones de .NET. La API le permite agregar, eliminar y extraer anotaciones de documentos de Word. Además, admite hojas de cálculo, presentaciones, imágenes, archivos PDF, páginas web, mensajes de correo electrónico, dibujos de Visio. Algunos dibujos de AutoCAD y formatos de imágenes digitales como DICOM también están en la lista. Para obtener la lista completa de formatos de documentos admitidos para la anotación, puede visitar la documentación.

Descargue el instalador DLL o MSI desde la sección de descargas o instale la API en su aplicación .NET a través de NuGet. También puede usar el siguiente comando del Administrador de paquetes.

PM> Install-Package GroupDocs.Annotation

Agregar anotaciones a Word en C#

Agreguemos algunos de los diferentes tipos de anotaciones a los documentos de Word. Hay muchos tipos diferentes de anotaciones, por lo que solo cubriremos algunos en este artículo.

Agregar anotaciones a DOC DOCX usando la API de GroupDocs

Hay algunos de los tipos de anotaciones admitidos, puede aprender sobre cada anotación individualmente.

  • Anotación de área/rectángulo
  • Flecha
  • Subrayado
  • Marca de agua
  • Distancia
  • Tachar
  • Campo de texto
  • Elipse
  • Destacar
  • Enlace
  • Punto
  • Polilínea
  • Reemplazo
  • Redacción de recursos
  • Redacción de texto

Agregar anotación de flecha a Word usando C#

Los siguientes son los pasos para agregar una anotación de flecha a un documento de Word en C#.

Agregar anotación de flecha mediante programación en Java y .NET
  • Cargue el documento usando la clase Annotator.
  • Inicialice la anotación de flecha con la clase ArrowAnnotation.
  • Ajuste la posición, el tamaño y el número de página de la anotación de flecha.
  • Agregue la anotación de flecha creada utilizando el método Agregar.
  • Guarde el documento de Word anotado en la ruta usando el método Guardar.

El siguiente ejemplo de código muestra cómo agregar una anotación de flecha a un documento de Word usando C#.

// Agregar anotación de flecha a documentos de Word usando 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");
}

Insertar anotación de área o rectángulo en Word usando C#

Se pueden realizar personalizaciones para cualquier anotación mientras se agrega al documento. Los siguientes son los pasos para agregar una anotación de área o rectángulo a un documento DOC/DOCX con algunas personalizaciones. Es muy similar a agregar anotaciones de flecha, pero esta vez usa la clase Anotación de área.

  • Cargue el documento DOC/DOCX usando la clase Annotator.
  • Inicialice la anotación de rectángulo usando la clase AreaAnnotation.
  • Ajuste la posición, el tamaño y el color del rectángulo.
  • Configure otras propiedades como número de página, fondo, opacidad, estilo, ancho de pluma, mensajes y hora.
  • Agregue la anotación de rectángulo creada al Anotador.
  • Guarde el archivo anotado en la ruta usando el método Guardar.
Agregar anotación de área o rectángulo mediante programación en .NET y Java

El siguiente ejemplo de código muestra cómo agregar una anotación de área o rectángulo a un documento de Word usando C#.

// Agregar anotación de área o rectángulo en documentos de Word usando 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");
}

Agregue una anotación ovalada o elíptica a Word usando C#

Los siguientes son los pasos para agregar una anotación ovalada o una anotación elíptica a un documento en C#.

Agregar puntos suspensivos o anotaciones ovaladas programáticamente en C# .NET y Java
  • Cargue el documento DOC/DOCX usando la clase Annotator.
  • Inicialice la anotación de elipse usando la clase EllipseAnnotation.
  • Establecer la posición y el tamaño de la anotación de elipse inicializada.
  • Agregue la anotación de elipse creada al objeto Annotator.
  • Proporcione la ruta y guarde el archivo de Word anotado usando el método Guardar.

El siguiente ejemplo de código muestra cómo agregar una anotación ovalada o elíptica a un documento de Word mediante C#.

// Agregue anotaciones ovaladas o elípticas en documentos de Word usando 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");
}

Insertar anotación de distancia en Word usando C#

Del mismo modo, puede agregar la anotación de distancia para marcar la distancia entre dos puntos. Los siguientes son los pasos para agregar una anotación de distancia al documento.

Agregar anotación de distancia mediante programación en C# .NET y Java
  • Después de cargar el documento de Word, inicialice la anotación de distancia usando la clase DistanceAnnotation.
  • Establecer la apariencia de la anotación.
  • Agregue la anotación de distancia al objeto Annotator.
  • Guarde los archivos de Word anotados en la ubicación dada especificando la ruta.

El siguiente ejemplo de código muestra cómo agregar una anotación de distancia a un documento DOC/DOCX mediante C#.

// Agregue anotaciones de distancia a documentos de Word usando 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ódigo completo

En resumen, aquí está el código completo con la salida que muestra todas las anotaciones y mensajes agregados con respuestas. El siguiente código C# a continuación agrega flechas, rectángulos, elipses, anotaciones de distancia, mensajes y respuestas a un archivo de Word.

// Agregue múltiples anotaciones a Word usando C#
// Agregar anotaciones de flecha, área, óvalo (elipse), distancia a DOC/DOCX con mensajes y respuestas usando 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);
}

Eliminar anotaciones de archivos DOC/DOCX de Word usando C#

Las anotaciones de los documentos se pueden eliminar fácilmente. Hay muchas opciones para eliminar las anotaciones de un documento de Word. Puede eliminar todas las anotaciones a la vez. Además, puede proporcionar los índices para eliminar las anotaciones específicas. Para más opciones, visite el artículo documentación.

Los siguientes son los pasos para eliminar todas las anotaciones de un archivo de Word.

  • Cargue el documento.
  • Inicialice las opciones de guardado usando la clase SaveOptions.
  • Establezca los tipos de anotación en Ninguno.
  • Guarde el archivo de Word. No tendrá ninguna anotación en él.

El siguiente código muestra cómo eliminar anotaciones de un archivo de Word usando C#.

// Elimina todas las anotaciones del documento de Word usando C#
using (Annotator annotator = new Annotator(outputPath))
{
    annotator.Save(remOutputPath, new SaveOptions {AnnotationTypes = AnnotationType.None});
}

Conclusión

En resumen, ha aprendido a agregar anotaciones a documentos de Word dentro de aplicaciones .NET usando C#. Específicamente, agregamos anotaciones de flecha, elipse, área y distancia al archivo Word DOC/DOCX. Además, también ha visto cómo eliminar todas las anotaciones de cualquier archivo de Word. Ahora, puede pensar en crear su propia aplicación .NET de anotador de documentos.

Obtenga más información sobre GroupDocs.Annotation para .NET en la documentación y el repositorio GitHub. Para más consultas, comuníquese con el soporte en el foro.

Ver también