No más largas discusiones dentro de largos hilos de correo electrónico sobre el contenido de los documentos. Puede usar anotaciones para marcar documentos con mensajes personalizados y sus respuestas. Este artículo analiza cómo anotar mediante programación archivos PDF para marcar documentos usando C#. Además, también discutiremos cómo eliminar anotaciones de archivos PDF.

Los siguientes temas se tratan brevemente a continuación:

.NET API para anotar archivos PDF

GroupDocs.Annotation tiene su API .NET para trabajar con las anotaciones dentro de los documentos e imágenes. Le permite agregar, eliminar y extraer anotaciones de documentos PDF y Word, hojas de cálculo y presentaciones. Además, admite imágenes, páginas web, mensajes de correo electrónico, dibujos de Visio y mucho más. Puede consultar la documentación para ver la lista completa de formatos de documentos admitidos para la anotación.

Descargue su 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 PDF usando C#

Hay muchos tipos diferentes de anotaciones que están disponibles para agregar dentro de los documentos, sin embargo, discutiremos solo algunas en este artículo.

Anotaciones añadidas a PDF

Las siguientes son algunas de las anotaciones admitidas. Puede aprender sobre cada anotación individualmente.

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

Agregar anotación de flecha a PDF usando C#

Los siguientes son los pasos para agregar anotaciones de flecha a documentos PDF en C#.

Agregar anotación de flecha mediante programación en Java y C# .NET
  • Cargue el documento PDF usando la clase Annotator.
  • Inicialice la Anotación de flecha.
  • Definir la posición, tamaño, número de página de la anotación de flecha.
  • Agregue la anotación de flecha definida mediante el método Agregar.
  • Guarde el documento anotado utilizando el método Save() adecuado.

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

// Agregar anotación de flecha a documentos PDF usando C#
using (Annotator annotator = new Annotator("path/document.pdf"))
{
    ArrowAnnotation arrow = new ArrowAnnotation
    {
        Box = new Rectangle(100, 100, 50, 50),

        // opcional --
        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.pdf");
}

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

Los siguientes son los pasos para agregar una anotación de área o rectángulo a un documento PDF con algunas personalizaciones. Es muy similar a agregar anotaciones de flecha, pero usa Anotación de área.

  • Cargue el documento PDF usando la clase Annotator.
  • Inicialice la anotación del rectángulo usando la clase AreaAnnotation.
  • Especifique la posición, el tamaño y el color del rectángulo.
  • También puede configurar otras propiedades como número de página, fondo, opacidad, estilo, ancho de pluma, mensajes y hora.
  • Agregue la anotación de rectángulo definida al Anotador.
  • Por último, guarde el archivo anotado con el método Save().
Agregar anotación de área o rectángulo mediante programación en C# .NET y Java

El siguiente ejemplo de código agrega una anotación de área/rectángulo a un documento PDF mediante C#.

// Agregar anotación de área o rectángulo en documentos PDF usando C#
using (Annotator annotator = new Annotator("path/document.pdf"))
{
    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.pdf");
}

Agregue anotaciones ovaladas o elípticas a PDF usando C#

Del mismo modo, agreguemos la anotación elipse/óvalo. Los siguientes pasos muestran cómo se puede agregar una anotación ovalada o una elipse a un archivo PDF usando C#.

Agregar puntos suspensivos o anotaciones ovaladas programáticamente en C# .NET y Java
  • Cargue el archivo PDF usando la clase Annotator.
  • Inicialice la Anotación Ellipse.
  • Establecer la posición, el tamaño y otras propiedades de la anotación inicializada.
  • Agregue la anotación de elipse creada al objeto Annotator.
  • Utilice el método Save() para guardar el archivo PDF anotado.

El siguiente ejemplo de código C# agrega una anotación ovalada/elipse a un documento PDF.

// Agregue anotaciones ovaladas o elípticas en documentos PDF usando C#
using (Annotator annotator = new Annotator("path/document.pdf"))
{
    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.pdf");
}

Insertar anotación de distancia en PDF usando C#

Puede usar la anotación de distancia para señalar la distancia entre dos objetos. Los siguientes son los pasos que agregan anotaciones de distancia al documento PDF usando C#.

Agregar anotación de distancia mediante programación en C# .NET y Java
  • Después de cargar el documento PDF usando la clase Annotator, inicialice la anotación de distancia usando DistanceAnnotation clase.
  • Establecer la apariencia, color de línea, grosor, estilo, etc.
  • Agregue la anotación de distancia al Anotador.
  • Guarde el archivo PDF con la anotación utilizando el método Save() adecuado.

El siguiente fragmento de código muestra cómo agregar la anotación de distancia dentro del PDF usando C#.

// Agregue anotaciones de distancia a documentos PDF usando C#
using (Annotator annotator = new Annotator("path/document.pdf"))
{
    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.pdf");
}

Eliminar anotaciones de archivos PDF usando C#

Hay diferentes formas de eliminar anotaciones de documentos PDF. Puede eliminar todas las anotaciones a la vez o puede proporcionar ID e índices para eliminar las selectivas. Discutimos las diferentes formas de eliminar anotaciones en el artículo separado. Sin embargo, estos son los pasos para eliminar todas las anotaciones de un archivo PDF.

  • Cargue el documento.
  • Inicialice las Opciones de guardado.
  • Establezca los tipos de anotaciones en Ninguno.
  • Guarde el archivo PDF sin anotaciones con el método Save().

El siguiente código C# muestra cómo eliminar anotaciones de archivos PDF.

// Elimina todas las anotaciones del documento PDF usando C#
using (Annotator annotator = new Annotator("path/document.pdf"))
{
    annotator.Save("path/document-noAnnotation.pdf", new SaveOptions {AnnotationTypes = AnnotationType.None});
}

Conclusión

Para concluir, aprendió a agregar diferentes anotaciones a documentos PDF dentro de las aplicaciones .NET usando C#. Más precisamente, agregamos anotaciones de flecha, elipse, área y distancia. Además, también ha visto una de las formas de eliminar todas las anotaciones de cualquier archivo PDF.

Puede pensar en crear su propia aplicación .NET de anotador de documentos. Para obtener más información sobre GroupDocs.Annotation for .NET, visite la documentación y el GitHub repositorio. Para más consultas, comuníquese con el soporte en el foro.

Ver también