Trabajando con marcas de agua

Trabajando con marcas de agua

Esta guía muestra cómo agregar, configurar y eliminar marcas de agua de documentos en Aspose.Words FOSS para .NET usando el Watermark clase, alcanzada a través de Document.Watermark. Una marca de agua puede ser texto o una imagen, y solo una marca de agua está activa en un documento a la vez – establecer una nueva reemplaza lo que había antes.


Añadiendo una marca de agua de texto

Watermark.SetText(text) añade una marca de agua de texto con formato predeterminado. La sobrecarga SetText(text, options) acepta una instancia TextWatermarkOptions para controlar su apariencia: FontFamily, Color y FontSize controlan el formato del texto, IsSemitrasparent alterna el efecto semitransparente típico de las marcas de agua, y Layout (un valor WatermarkLayout — Horizontal o Diagonal) controla su orientación respecto a la página.


Añadiendo una marca de agua de imagen

Watermark.SetImage(image) añade una marca de agua de imagen a partir de un Image ya cargado. Las sobrecargas que también aceptan una instancia ImageWatermarkOptions — SetImage(image, options), SetImage(imagePath, options) (cargando desde una ruta de archivo) y SetImage(imageStream, options) (cargando desde un Stream) — le permiten controlar Scale (el factor de escala de la imagen, expresado como fracción) y IsWashout (el efecto deslavado que evita que la imagen de la marca de agua domine el contenido de la página).


Comprobando y eliminando una marca de agua

Watermark.Type informa el tipo de marca de agua actual como un valor WatermarkType – Text, Image o None si no hay ninguna marca de agua establecida. Llame a Watermark.Remove() para eliminar la marca de agua actual del documento.


Consejos y Mejores Prácticas

  • Verifique Watermark.Type antes de asumir que existe una marca de agua – devuelve WatermarkType.None en un documento que nunca ha tenido una establecida.
  • Establecer una nueva marca de agua mediante SetText() o SetImage() reemplaza cualquier marca de agua existente; no hay forma de tener más de una marca de agua activa a la vez.
  • Utilice WatermarkLayout.Diagonal para reproducir la orientación diagonal predeterminada de la marca de agua de Word, o Horizontal para una marca de agua que se alinee paralelamente a los bordes de la página.
  • Prefiera las sobrecargas ImageWatermarkOptions/TextWatermarkOptions sobre las llamadas simples SetImage(image) / SetText(text) siempre que necesite controlar la opacidad, escala o fuente – las sobrecargas sin parámetros usan los valores predeterminados de Word.

Problemas Comunes

ProblemaCausaSolución
Una nueva marca de agua no se muestra junto a la anteriorSetText()/SetImage() reemplaza la marca de agua existente en lugar de añadir una segundaLlame a Remove() primero solo si necesita borrarla antes de establecer un tipo diferente; de lo contrario, la sustitución es automática
Una marca de agua de imagen sobrecarga el contenido de la páginaImageWatermarkOptions.IsWashout quedó deshabilitadoEstablezca IsWashout en true al construir el ImageWatermarkOptions
La fuente de la marca de agua de texto no coincide con la tipografía previstaTextWatermarkOptions.FontFamily no se configuró (o estaba escrito incorrectamente)Establezca FontFamily a un nombre de fuente disponible en el entorno de renderizado

FAQ

¿Cómo verifico si un documento ya tiene una marca de agua?

Lee Document.Watermark.Type; devuelve WatermarkType.Text, WatermarkType.Image o WatermarkType.None.

¿Cómo elimino una marca de agua?

Llama a Document.Watermark.Remove().

¿Puedo controlar la transparencia de la marca de agua?

Sí — para marcas de agua de texto, establece TextWatermarkOptions.IsSemitrasparent; para marcas de agua de imagen, establece ImageWatermarkOptions.IsWashout.

¿Cómo cargo una marca de agua de imagen desde el disco en lugar de un Image en memoria?

Utiliza la sobrecarga Watermark.SetImage(imagePath, options), pasando la ruta del archivo como una cadena junto con una instancia de ImageWatermarkOptions.


API Reference Resumen

Clase / EnumeraciónDescripción
WatermarkMarca de agua del documento, a través de Document.Watermark; SetText(), SetImage(), Remove(), Type
WatermarkTypeEnumeración que identifica el tipo actual de marca de agua: Text, Image, None
WatermarkLayoutEnumeración para la orientación de la marca de agua: Horizontal, Diagonal
TextWatermarkOptionsFormato de marca de agua de texto: FontFamily, Color, FontSize, IsSemitrasparent, Layout
ImageWatermarkOptionsOpciones de marca de agua de imagen: Scale, IsWashout

Ver también

 Español