Agregar marca de agua a la hoja de Excel usando C#

Ya hemos discutido formas de poner marcas de agua en diferentes documentos, imágenes y presentaciones. Hoy, discutiremos cómo agregar una marca de agua a un libro de Excel de diferentes maneras usando C# con la aplicación .NET.

Los siguientes temas se tratan a continuación:

.NET API para hojas de Excel de marca de agua

GroupDocs.Watermark proporciona la API de .NET para documentos e imágenes de varios formatos de archivo. Usaremos GroupDocs.Watermark for .NET para aplicar marcas de agua en hojas de cálculo de diferentes maneras usando C#.

Puede descargar el instalador de DLL o MSI desde la sección de descargas u obtenerlo de NuGet.

Install-Package GroupDocs.Watermark

Hojas de Excel con marca de agua usando C#

La API le permite insertar texto en las hojas de cálculo como una marca de agua con diferentes personalizaciones. Los siguientes son los pasos para agregar una marca de agua a los libros de Excel usando C# con las aplicaciones .NET.

  • Preparar las opciones de carga para la hoja de cálculo.
  • Cargue la hoja de cálculo usando Marcador de agua.
  • Defina el texto y la apariencia de la marca de agua usando TextWatermark.
  • Agregue la marca de agua de texto a la hoja de cálculo de Excel usando el método Agregar.
  • Guarde la hoja de cálculo resultante con marca de agua utilizando el método Guardar.

El siguiente ejemplo de código C# aplica la marca de agua de texto a todas las hojas del libro de Excel con rotación y opacidad.

/*
 * Agregue marca de agua a todas las hojas del libro de Excel usando C#
 */
SpreadsheetLoadOptions loadOptions = new SpreadsheetLoadOptions();
using (Watermarker watermarker = new Watermarker(@"path/spreadsheet.xlsx", loadOptions))
{
    // Agregar marca de agua de texto a la hoja de trabajo
    TextWatermark textWatermark = new TextWatermark("DRAFT", new Font("Arial", 100))
    {
        RotateAngle = -45,
        Height = 200,
        Width = 500,
        Opacity = .2,
        ForegroundColor = Color.DarkBlue
    };
    // Agregue una marca de agua y guarde la hoja de cálculo con marca de agua.
    watermarker.Add(textWatermark);
    watermarker.Save(@"path/allpages-watermark-spreadsheet.xlsx");
}

Hoja de Excel específica de marca de agua usando C#

Del mismo modo, puede aplicar marcas de agua solo a una hoja específica en lugar de aplicarlas a todas las hojas del libro de trabajo. Los siguientes pasos guían sobre cómo insertar una marca de agua de texto en la hoja específica del libro de Excel usando C#.

  • Preparar las opciones de carga.
  • Cargue la hoja de cálculo usando la clase Marcador de agua.
  • Defina la apariencia y el texto de la marca de agua usando la clase TextWatermark.
  • Establezca el índice de la hoja de trabajo para que la marca de agua se aplique solo a la hoja mencionada.
  • Agregue la marca de agua de texto a la hoja de cálculo de Excel usando el método Agregar con opciones de marca de agua.
  • Guarde la hoja de cálculo de salida que tenga la marca de agua usando el método Guardar.

El siguiente fragmento de código aplica la marca de agua de texto solo a la hoja mencionada del libro de Excel.

/*
 * Agregue una marca de agua solo a la hoja mencionada del libro de Excel usando C#
 */
SpreadsheetLoadOptions loadOptions = new SpreadsheetLoadOptions();
using (Watermarker watermarker = new Watermarker(@"path/spreadsheet.xlsx", loadOptions))
{
    // Agregar marca de agua de texto a la hoja de trabajo
    TextWatermark textWatermark = new TextWatermark("DRAFT", new Font("Arial", 100))
    {
        RotateAngle = -45,
        Height = 200,
        Width = 500,
        Opacity = .2,
        ForegroundColor = Color.DarkBlue
    };
    // Definir el índice de la hoja de cálculo
    SpreadsheetWatermarkShapeOptions textWatermarkOptions = new SpreadsheetWatermarkShapeOptions()
    {
        WorksheetIndex = 1
    };
    // Agregue una marca de agua y guarde la hoja de cálculo con marca de agua.    
    watermarker.Add(textWatermark, textWatermarkOptions);
    watermarker.Save(@"path/onepage-watermark-spreadsheet.xlsx");
}

Hojas de Excel con marca de agua como fondo usando C#

Asimismo, también podemos añadir marcas de agua como fondo de la hoja de cálculo. Habrá un pequeño cambio con respecto a las técnicas anteriores de aplicación de marcas de agua. Los siguientes son los pasos que permiten insertar una marca de agua de texto de fondo en una hoja de cálculo de Excel usando C#.

  • Preparar las opciones de carga para cargar la hoja de cálculo.
  • Cargue la hoja de cálculo usando Marcador de agua.
  • Defina el texto y la apariencia de la marca de agua (rotación, posición, dimensiones, opacidad, color y más) usando TextWatermark.
  • Configure las opciones de marca de agua de fondo obteniendo contenido y configurando dimensiones.
  • Establecer el índice de la hoja de trabajo para aplicar marca de agua. (Opcional)
  • Agregue la marca de agua a la hoja de cálculo usando el método Agregar.
  • Guarde la hoja de cálculo con marca de agua utilizando el método Guardar.

El siguiente ejemplo de código muestra cómo agregar una marca de agua de fondo a una hoja de cálculo de Excel usando C# dentro de la aplicación .NET.

/*
 * Agregue una marca de agua como fondo al libro de Excel usando C#
 */
SpreadsheetLoadOptions loadOptions = new SpreadsheetLoadOptions();
using (Watermarker watermarker = new Watermarker(@"path/spreadsheet.xlsx", loadOptions))
{
    // Definir la apariencia de la marca de agua
    TextWatermark textWatermark = new TextWatermark("DRAFT", new Font("Arial", 100))
    {
        RotateAngle = -45,
        X = 200,
        Y = 200,
        Height = 200,
        Width = 500,
        Opacity = .2,
        ForegroundColor = Color.DarkBlue
    };
    // Obtener dimensiones del contenido de la hoja de cálculo
    SpreadsheetContent content = watermarker.GetContent<SpreadsheetContent>();
    SpreadsheetBackgroundWatermarkOptions options = new SpreadsheetBackgroundWatermarkOptions();
    options.BackgroundWidth = content.Worksheets[0].ContentAreaWidthPx; /* set background width */
    options.BackgroundHeight = content.Worksheets[0].ContentAreaHeightPx; /* set background height */
    options.WorksheetIndex = 0;

    // Agregue una marca de agua y guarde la hoja de cálculo con marca de agua.
    watermarker.Add(textWatermark, options);
    watermarker.Save(@"path/background-watermark-spreadsheet.xlsx");
}
Hojas de Excel con marca de agua programáticamente

Obtenga una licencia de API gratuita

Puede obtener una licencia temporal gratuita para utilizar la API sin las limitaciones de evaluación.

Conclusión

Para resumir, discutimos diferentes formas de agregar marcas de agua a las hojas de Excel usando C#. Primero, agregamos marcas de agua de texto a todas las hojas del libro de Excel. Luego aplicamos la marca de agua solo a la hoja específica. Por último, insertamos la marca de agua basada en texto en el libro de Excel como fondo.

Visite la documentación del producto para obtener más información sobre la API. Para consultas, contáctenos a través del foro.

Ver también