// For complete examples and data files, please go to https://github.com/groupdocsviewer/GroupDocs_Viewer_NET
//Get Configurations
ViewerConfig config = Utilities.GetConfigurations();
// Create image handler
ViewerImageHandler imageHandler = new ViewerImageHandler(config);
// Guid implies that unique document name
string guid = DocumentName;
//Initialize ImageOptions Object
ImageOptions options = new ImageOptions();
// Set password if document is password protected. 
if (!String.IsNullOrEmpty(DocumentPassword))
    options.Password = DocumentPassword;
           
// Call AddWatermark and pass the reference of ImageOptions object as 1st parameter
Utilities.PageTransformations.AddWatermark(ref options, WatermarkText, WatermarkColor, position, WatermarkWidth);
            
//Get document pages in image form
List<PageImage> Images = imageHandler.GetPages(guid, options);
foreach (PageImage image in Images)
{
    //Save each image at disk
    Utilities.SaveAsImage(image.PageNumber + "_" + DocumentName, image.Stream);
}