Agregar marcas de agua de texto o imagen en documentos de Word usando C#

Como desarrollador de C#, puede agregar fácilmente marcas de agua de texto o imagen en documentos de Word mediante programación. Una marca de agua es una especie de mensaje en forma de texto o imagen, que generalmente se usa para identificar o proteger los documentos al mostrar información de derechos de autor, descargo de responsabilidad, logotipo, sello o firma. En este artículo, aprenderá cómo agregar marcas de agua de texto o imagen en documentos de Word usando C#.

Los siguientes temas se discuten/tratan en este artículo:

API de C# para agregar marcas de agua en documentos de Word

Para agregar marcas de agua de texto o imagen en archivos DOC o DOCX, utilizaremos la API GroupDocs.Watermark for .NET. Le permite agregar, editar, buscar y eliminar marcas de agua de imágenes y texto en formatos de archivo admitidos. También permite obtener la información básica sobre los documentos de origen, como el tipo de archivo, el tamaño, el número de páginas, el alto y el ancho de la página, etc. La función de vista previa del documento de la API permite generar representaciones de imágenes de las páginas del documento para una mejor comprensión del documento.

Puede descargar la DLL de la API o instalarla mediante NuGet.

Install-Package GroupDocs.Watermark

Agregar marca de agua de texto en documentos de Word usando C#

Puede agregar una marca de agua de texto a los documentos de Word siguiendo los pasos que se detallan a continuación:

  • En primer lugar, cargue el archivo DOCX usando la clase Marcador de agua.
  • Inicialice la fuente que se usará para el texto de la marca de agua usando la clase Fuente.
  • Cree una instancia de la clase TextWatermark para crear una marca de agua de texto. Pase el texto para mostrar como marca de agua y el objeto de fuente definido como parámetros de entrada.
  • Ahora, configure varias propiedades de marca de agua, como Color de primer plano, Color de fondo, Ángulo de rotación, Altura, Ancho, Opacidad, etc.
  • Luego, llame al método Watermarker.Add() para agregar la marca de agua de texto al documento.
  • Finalmente, llame al método Watermarker.Save() para guardar el documento de Word con marca de agua.

El siguiente ejemplo de código muestra cómo agregar una marca de agua de texto en un archivo DOCX usando C#.

// Creador de marca de agua
Watermarker watermarker = new Watermarker(@"C:\Files\Watermark\sample.docx");

// Inicialice la fuente que se utilizará para la marca de agua
Font font = new Font("Arial", 19, FontStyle.Bold | FontStyle.Italic);

// Crear el objeto de marca de agua
TextWatermark watermark = new TextWatermark("Simple Text Watermark", font);

// Establecer propiedades de marca de agua
watermark.ForegroundColor = Color.Red;
watermark.BackgroundColor = Color.Blue;
watermark.TextAlignment = TextAlignment.Right;
watermark.HorizontalAlignment = HorizontalAlignment.Center;
watermark.VerticalAlignment = VerticalAlignment.Bottom;

// Establecer el tamaño de la marca de agua
watermark.Width = 150;
watermark.Height = 40;

// Establecer nivel de opacidad
watermark.Opacity = 0.9;

// Agregar marca de agua
watermarker.Add(watermark);

// Guarde el archivo de salida
watermarker.Save(@"C:\Files\Watermark\addTextWatermark_output.docx");
Agregar marca de agua de texto en documentos de Word usando C#.

Agregar marca de agua de texto en documentos de Word usando C#

Agregar marca de agua de imagen en documentos de Word usando C#

Puede agregar una imagen como marca de agua a los documentos de Word siguiendo los pasos que se detallan a continuación:

  • En primer lugar, cargue el archivo DOCX usando la clase Marcador de agua.
  • Cree una instancia de la clase ImageWatermark con la ruta de la imagen para crear una marca de agua de imagen.
  • Ahora, configure varias propiedades de marca de agua como Alineación, Altura, Ancho, etc.
  • Luego, llame al método Watermarker.Add() para agregar la marca de agua de la imagen al documento.
  • Finalmente, llame al método Watermarker.Save() para guardar el documento de Word con marca de agua.

El siguiente ejemplo de código muestra cómo agregar una marca de agua de imagen en un archivo DOCX usando C#.

// Crear marca de agua
Watermarker watermarker = new Watermarker(@"C:\Files\Watermark\sample.docx");

// Crear el objeto de marca de agua
ImageWatermark watermark = new ImageWatermark(@"C:\Files\Watermark\logo.png");

// Establecer alineación de marca de agua
watermark.HorizontalAlignment = HorizontalAlignment.Center;
watermark.VerticalAlignment = VerticalAlignment.Bottom;

// Establecer el tamaño de la marca de agua
watermark.Width = 100;
watermark.Height = 100;

// Agregar marca de agua
watermarker.Add(watermark);

// Guarde el archivo de salida
watermarker.Save(@"C:\Files\Watermark\AddImageWatermark_output.docx");
Agregar marca de agua de imagen en documentos de Word usando C#.

Agregar marca de agua de imagen en documentos de Word usando C#

Marca de agua las imágenes de un documento de Word usando C#

Puede agregar una marca de agua de texto a las imágenes en documentos de Word siguiendo los pasos que se detallan a continuación:

  • En primer lugar, cargue el archivo DOCX usando la clase Marcador de agua.
  • Cree una instancia de la clase TextWatermark para crear una marca de agua de texto. Pase el texto para mostrar como marca de agua y la fuente que se usará para el texto de la marca de agua usando la clase Fuente como parámetros de entrada.
  • Ahora, establezca varias propiedades de marca de agua, por ejemplo, Color de primer plano, Alineación, Ángulo de rotación, Factor de escala, etc.
  • Luego, llama al método Watermarker.GetImages() para buscar todas las imágenes en el documento y obtener resultados en el objeto de clase WatermarkableImageCollection.
  • Para cada imagen en WatermarkableImageCollection, agrega una marca de agua llamando al método WatermarkableImage.Add() con el objeto TextWatermark.
  • Finalmente, llame al método Watermarker.Save() para guardar el documento de Word con marca de agua.

El siguiente ejemplo de código muestra cómo agregar una marca de agua de texto a las imágenes en un archivo DOCX usando C#.

// Crear marca de agua
Watermarker watermarker = new Watermarker(@"C:\Files\Watermark\sample.docx");

// Creador de marca de agua de texto
TextWatermark watermark = new TextWatermark("Protected image", new Font("Arial", 8));

// Establecer propiedades de marca de agua
watermark.ForegroundColor = Color.Black;
watermark.HorizontalAlignment = HorizontalAlignment.Center;
watermark.VerticalAlignment = VerticalAlignment.Center;
watermark.RotateAngle = 45;
watermark.SizingType = SizingType.ScaleToParentDimensions;
watermark.ScaleFactor = 1;

// Encuentra todas las imágenes en el contenido.
WatermarkableImageCollection images = watermarker.GetImages();

// Añadir marca de agua.
foreach (WatermarkableImage watermarkableImage in images)
{
    watermarkableImage.Add(watermark);
}

// Guarde el archivo de salida
watermarker.Save(@"C:\Files\Watermark\AddWatermarkToImages_output.docx");
Imágenes de marca de agua en documentos de Word usando C#.

Imágenes de marca de agua en documentos de Word usando C#.

Agregar marca de agua a páginas específicas en documentos de Word usando C#

Puede agregar una marca de agua a una página específica del documento de Word siguiendo los pasos que se detallan a continuación:

  • En primer lugar, cargue el archivo DOCX usando la clase Marcador de agua.
  • Inicialice la fuente que se usará para el texto de la marca de agua usando la clase Fuente.
  • Cree una instancia de la clase TextWatermark para crear una marca de agua de texto. Pase el texto para mostrar como marca de agua y el objeto de fuente definido como parámetros de entrada.
  • Ahora, configure varias propiedades de marca de agua como Color de primer plano, Color de fondo, Alineación, etc.
  • Cree una instancia de la clase WordProcessingWatermarkPagesOptions
  • Ahora, configure PageNumbers para agregar la marca de agua. Puede establecer un solo número de página o una lista de números de página separados por comas. Lo configuramos en WordProcessingContent.PageCount que indica la última página del documento aquí.
  • Luego, llame al método Watermarker.Add() para agregar la marca de agua definida.
  • Finalmente, llame al método Watermarker.Save() para guardar el documento de Word con marca de agua.

El siguiente ejemplo de código muestra cómo agregar una marca de agua de texto a una página específica en un archivo DOCX usando C#.

// Crear marca de agua
Watermarker watermarker = new Watermarker(@"C:\Files\Watermark\sample.docx");

// Crear marca de agua de texto
TextWatermark watermark = new TextWatermark("This is simple watermark!", new Font("Arial", 26));

// Establecer propiedades de marca de agua
watermark.ForegroundColor = Color.Red;
watermark.BackgroundColor = Color.Blue;
watermark.TextAlignment = TextAlignment.Right;

watermark.HorizontalAlignment = HorizontalAlignment.Left;
watermark.VerticalAlignment = VerticalAlignment.Top;

// Agregar marca de agua a la última página
WordProcessingContent content = watermarker.GetContent<WordProcessingContent>();
WordProcessingWatermarkPagesOptions options = new WordProcessingWatermarkPagesOptions();
options.PageNumbers = new int[] { content.PageCount };

// Agregar marca de agua
watermarker.Add(watermark, options);

// Guarde el archivo de salida
watermarker.Save(@"C:\Files\Watermark\AddToSpecificPage_output.docx");

Puede agregar una marca de agua a las secciones de encabezado o pie de página de los documentos de Word siguiendo los pasos que se detallan a continuación:

El siguiente ejemplo de código muestra cómo agregar una marca de agua a una sección de encabezado o pie de página en un archivo DOCX usando C#.

// Crear marca de agua
Watermarker watermarker = new Watermarker(@"C:\Files\Watermark\sample.docx");

// Crear marca de agua de imagen
using (ImageWatermark watermark = new ImageWatermark(@"C:\Files\Watermark\logo.png"))
{
    // Establecer propiedades de marca de agua
    watermark.Height = 100;
    watermark.Width = 100;
    watermark.HorizontalAlignment = HorizontalAlignment.Right;

    // Agregar marca de agua a todos los encabezados de la primera sección
    WordProcessingWatermarkSectionOptions options = new WordProcessingWatermarkSectionOptions();
    options.SectionIndex = 0;
    watermarker.Add(watermark, options);
}

// Vincule todos los demás encabezados y pies de página a los encabezados y pies de página correspondientes de la primera sección
WordProcessingContent content = watermarker.GetContent<WordProcessingContent>();
for (int i = 1; i < content.Sections.Count; i++)
{
    content.Sections[i].HeadersFooters.LinkToPrevious(true);
}

// Guarde el archivo de salida
watermarker.Save(@"C:\Files\Watermark\AddWatermarkToHeadersFooters_output.docx");
Agregue marca de agua al encabezado o pie de página de documentos de Word usando C#.

Agregue marca de agua al encabezado o pie de página de documentos de Word usando C#.

Obtenga una licencia gratis

Puede probar la API sin limitaciones de evaluación solicitando una licencia temporal gratuita.

Conclusión

En este artículo, aprendió cómo agregar una marca de agua de texto o imagen en los documentos de Word usando C#. Además, ha visto cómo agregar una marca de agua a una página específica de un documento de Word mediante programación. Este artículo también explicó cómo agregar una marca de agua a las imágenes en el archivo DOCX usando C#. Además, puede obtener más información sobre GroupDocs.Watermark para la API de .NET utilizando la documentación. En caso de cualquier ambigüedad, no dude en contactarnos en el foro.

Ver también