USO DE IRONWORD

Cómo añadir una marca de agua a un archivo de Word en C#

Publicado en 23 de octubre, 2024
Compartir:

En la empresa moderna de hoy en día, los documentos de Word son sinónimo de información y transportan información importante entre divisiones y empresas. Sin embargo, con los documentos digitales, también existe el riesgo de que alguien manipule o falsifique un documento de Word inválido o falso.

Por ello, una forma de combatirlo es añadir marcas de agua a los documentos de Word. Sin embargo, esto no aumenta la seguridad de un documento de Word. Una marca de agua permite diferenciar el documento de Word real del falsificado. Además, añadir una marca de agua mediante programación es todo un reto, ya que la mayoría de los casos requieren que los usuarios utilicen Microsoft Word manualmente y añadan una marca de agua en cada documento, lo que lo convierte en un proceso laboriosamente largo.

Afortunadamente,IronWord puede añadir mediante programación imágenes como marcas de agua en Word. De este modo, los desarrolladores podrán añadirlas en el pipeline mediante programación, reduciendo las palabras repetitivas y aumentando la eficacia y la coherencia.

Aunque existen varios tipos de marcas de agua, como la marca de agua de forma, la marca de agua de texto, en este artículo sólo se utilizarán marcas de agua de imagen e imagen, se hablará de IronWord como biblioteca y se proporcionarán ejemplos prácticos de cómo añadir imágenes al documento de Word.

Añadir marcas de agua a documentos de Word

IronWord

Cómo añadir una marca de agua a un archivo de Word en C#: Figura 1 - IronWord: La biblioteca DOCX de C#

IronWord es una biblioteca C# Docx fiable y fácil de usar que permite a los desarrolladores crear y editar documentos de Word en C sin depender de herramientas tradicionales como Microsoft Office o Word Interlope.

Además, cuenta con documentación de ampliación y es totalmente compatible con .NET 8, 7, 6, Framework, Core y Azure. Esto hace que sea compatible con la mayoría de las aplicaciones y flexible independientemente de la aplicación con la que se esté trabajando.

Trabajar con marcas de agua de imágenes

Clave de licencia

Recuerde que IronWord requiere una clave de licencia para su funcionamiento. Puede obtener una clave como parte de una prueba gratuita visitando este enlaceenlace.

//Replace the license key variable with the trial key you obtained
IronWord.License.LicenseKey = "REPLACE-WITH-YOUR-KEY";
//Replace the license key variable with the trial key you obtained
IronWord.License.LicenseKey = "REPLACE-WITH-YOUR-KEY";
IRON VB CONVERTER ERROR developers@ironsoftware.com
VB   C#

Tras recibir una clave de prueba, establezca esta variable en su proyecto.

Añadir marca de agua de imagen en documento de Word.

Veamos un ejemplo de cómo añadir una marca de agua a un documento de Word. No mencionaremos static void main para reducir el código repetitivo, sino que mostraremos únicamente el código principal.

Utilizaremos esta imagen como marca de agua y la añadiremos al documento de Word.

Cómo añadir una marca de agua a un archivo de Word en C#: Figura 2 - Imagen de entrada

using IronWord;
using IronWord.Models;
using IronWord.Models.Enums;
#region
IronWord.License.LicenseKey = "YOUR-KEY";
#endregion
// Create a new Word document
WordDocument doc = new WordDocument();
//doc.AddImage("ironword.png");
IronWord.Models.Image image = new IronWord.Models.Image("ironword.png");
image.Width = 500; // In unit pixel
image.Height = 250; // In unit pixel
doc.AddImage(image);
// Export docx
doc.SaveAs("documentImageResized.docx");
using IronWord;
using IronWord.Models;
using IronWord.Models.Enums;
#region
IronWord.License.LicenseKey = "YOUR-KEY";
#endregion
// Create a new Word document
WordDocument doc = new WordDocument();
//doc.AddImage("ironword.png");
IronWord.Models.Image image = new IronWord.Models.Image("ironword.png");
image.Width = 500; // In unit pixel
image.Height = 250; // In unit pixel
doc.AddImage(image);
// Export docx
doc.SaveAs("documentImageResized.docx");
Imports IronWord
Imports IronWord.Models
Imports IronWord.Models.Enums
#Region ""
IronWord.License.LicenseKey = "YOUR-KEY"
'#End Region
' Create a new Word document
Dim doc As New WordDocument()
'doc.AddImage("ironword.png");
Dim image As New IronWord.Models.Image("ironword.png")
image.Width = 500 ' In unit pixel
image.Height = 250 ' In unit pixel
doc.AddImage(image)
' Export docx
doc.SaveAs("documentImageResized.docx")
VB   C#
  1. Primero creamos una nueva instancia de WordDocument. Esta es la clase de documento de IronWord. En los siguientes pasos, crearemos una nueva variable llamada documento DOC y le añadiremos la marca de agua de la imagen.

  2. A continuación, cargamos nuestra imagen de entrada desde arriba a una nueva clase Image.

  3. Ajustamos la anchura y la altura de la imagen en consecuencia. Esta propiedad de anchura y altura también permite a los usuarios escalar la marca de agua de la imagen. En nuestro ejemplo, la anchura se fija en 500 y la altura en 250.

  4. A continuación, añadimos la marca de agua de la imagen al documento utilizando `AddImage.`

  5. Por último, guardamos y exportamos el documento `documentImageResized` como archivo de Word.

    A continuación se muestra el resultado del documento de Word.

    Cómo añadir una marca de agua a un archivo de Word en C#: Figura 3 - Documento Word de salida

    Tenga en cuenta que las dimensiones establecidas en el ejemplo se han hecho para que quepan en todo el documento de Word y muestren las capacidades de IronWord.

    Además de añadir la imagen, podemos utilizar la propiedad `WrapText` para asegurarnos de que la marca de agua de la imagen permanece detrás del texto en el fondo.

image.WrapText = WrapText.BehindText;
image.WrapText = WrapText.BehindText;
image.WrapText = WrapText.BehindText
VB   C#

A través de esta propiedad, la marca de agua de la imagen debe envolver detrás del texto, sólo me muestra en el fondo, permitiendo que el texto sea sin obstáculos.

Además, los desarrolladores intentan personalizar más la marca de agua de la imagen para hacerla única. IronWord permite desplazar las dimensiones de la imagen con respecto al documento de Word y gestionar también la posición de la marca de agua de la imagen.

using IronWord;
using IronWord.Models;
#region
IronWord.License.LicenseKey = "YOUR-KEY";
#endregion
// Create a new Word document
WordDocument doc = new WordDocument();
//doc.AddImage("ironword.png");
IronWord.Models.Image image = new IronWord.Models.Image("ironword.png");
ElementPosition elementPosition = new ElementPosition();
elementPosition.SetXPosition(50);
elementPosition.SetYPosition(50);
image.Width = 50; // In unit pixel
image.Height = 50; // In unit pixel
image.Position = elementPosition;
image.DistanceFromTop = 100;
image.DistanceFromBottom = 100;
image.DistanceFromLeft = 100;
image.DistanceFromRight = 100;
using IronWord;
using IronWord.Models;
#region
IronWord.License.LicenseKey = "YOUR-KEY";
#endregion
// Create a new Word document
WordDocument doc = new WordDocument();
//doc.AddImage("ironword.png");
IronWord.Models.Image image = new IronWord.Models.Image("ironword.png");
ElementPosition elementPosition = new ElementPosition();
elementPosition.SetXPosition(50);
elementPosition.SetYPosition(50);
image.Width = 50; // In unit pixel
image.Height = 50; // In unit pixel
image.Position = elementPosition;
image.DistanceFromTop = 100;
image.DistanceFromBottom = 100;
image.DistanceFromLeft = 100;
image.DistanceFromRight = 100;
Imports IronWord
Imports IronWord.Models
#Region ""
IronWord.License.LicenseKey = "YOUR-KEY"
'#End Region
' Create a new Word document
Dim doc As New WordDocument()
'doc.AddImage("ironword.png");
Dim image As New IronWord.Models.Image("ironword.png")
Dim elementPosition As New ElementPosition()
elementPosition.SetXPosition(50)
elementPosition.SetYPosition(50)
image.Width = 50 ' In unit pixel
image.Height = 50 ' In unit pixel
image.Position = elementPosition
image.DistanceFromTop = 100
image.DistanceFromBottom = 100
image.DistanceFromLeft = 100
image.DistanceFromRight = 100
VB   C#

Al igual que en el código anterior, fijamos las dimensiones de las posiciones x e y de la imagen en 50. También desplazamos las dimensiones de cada lado de la imagen. También desplazamos las dimensiones de cada lado 100px para crear un margen a su alrededor.

Conclusión

Cómo añadir una marca de agua a un archivo de Word en C#: Figura 4 - Información de licencia de IronWord

A lo largo de los ejemplos, hemos demostrado lo sencillo que es utilizar la funciónIronWord para manipular y leer documentos de Word mediante programación en C#. La flexibilidad y escalabilidad de la biblioteca la convierten en una herramienta valiosa que permite a los desarrolladores utilizar IronWord en ejemplos prácticos y reales, como añadir una marca de agua y una marca de agua de texto. Es esencial comprender cómo funciona Word con otras aplicaciones, ya que ofrece a los desarrolladores soluciones adicionales a sus retos.

IronWord ofrece unlicencia de prueba gratuita.

< ANTERIOR
Cómo generar un documento de Word utilizando una plantilla de Word en C#
SIGUIENTE >
Cómo extraer texto de Word en C#

¿Listo para empezar? Versión: 2024.12 acaba de salir

Descarga gratuita de NuGet Descargas totales: 7,878 Ver licencias >