Watermark Class
A document’s watermark.
Namespace: DevExpress.XtraPrinting.Drawing
Assembly: DevExpress.Printing.v24.1.Core.dll
NuGet Package: DevExpress.Printing.Core
Declaration
Related API Members
The following members return Watermark objects:
Remarks
A document can contain either text, or a picture as its watermark. The following properties are in effect for text watermarks only.
- PageWatermark.Text;
- PageWatermark.TextDirection;
- PageWatermark.Font;
- PageWatermark.ForeColor;
- PageWatermark.TextTransparency.
- PageWatermark.TextPosition
The following properties are in effect for picture watermarks only.
- PageWatermark.Image;
- PageWatermark.ImageAlign;
- PageWatermark.ImageTiling;
- PageWatermark.ImageViewMode.
- PageWatermark.ImageTransparency.
- PageWatermark.ImagePosition
Both text and image watermarks have the Watermark.Id property. The unique identifier of a watermark used to specify the watermark in the Page.WatermarkId property.
The Watermark toolbar button and the corresponding menu item are represented via the PrintingSystemCommand.Watermark printing system command. To change the visibility of these items the PrintingSystemBase.SetCommandVisibility method should be used.
The PrintingSystemBase.Watermarks property holds a WatermarkCollection that contains all Watermark
objects in the document. To add a watermark to a document, call the Watermark.CopyFrom method or add a watermark to the collection.
When a watermark is specified for a document, it is applied to all pages. To specify individual watermarks for particular pages, use the Page.WatermarkId property or call the Page.AssignWatermark method.
Example
This example demonstrates how to add a watermark to a printing system document. The SetTextWatermark method demonstrates the properties that are used to specify settings when a text watermark is added to a document, while the SetPictureWatermark method demonstrates the properties required to set a picture as a document’s watermark.
using System.Drawing;
using DevExpress.XtraPrinting;
using DevExpress.XtraPrinting.Drawing;
using DevExpress.Drawing;
// ...
public void SetTextWatermark(PrintingSystem ps){
// Create the text watermark.
Watermark textWatermark = new Watermark();
// Set watermark options.
textWatermark.Text = "CUSTOM WATERMARK TEXT";
textWatermark.TextDirection = DirectionMode.ForwardDiagonal;
textWatermark.Font = new DXFont(textWatermark.Font.FontFamily, 40);
textWatermark.ForeColor = Color.DodgerBlue;
textWatermark.TextTransparency = 150;
textWatermark.TextPosition = WatermarkPosition.InFront;
textWatermark.PageRange = "1,3-5";
// Add the watermark to the collection.
ps.Watermarks.Add(textWatermark);
}
public void SetPictureWatermark(PrintingSystem ps){
// Create the picture watermark.
Watermark pictureWatermark = new Watermark();
// Set watermark options.
pictureWatermark.Image = Bitmap.FromFile("watermark.gif");
pictureWatermark.ImageAlign = ContentAlignment.TopCenter;
pictureWatermark.ImageTiling = false;
pictureWatermark.ImageViewMode = ImageViewMode.Stretch;
pictureWatermark.ImageTransparency = 150;
pictureWatermark.ImagePosition = WatermarkPosition.Behind;
pictureWatermark.PageRange = "2,4";
// Add the watermark to the collection.
ps.Watermarks.Add(pictureWatermark);
}