The following example demonstrates how to get the watermarks used in a PDF document & then display some of their properties (like the text, font, character size, etc.).
| Get watermarks from a PDF document (C#) |
Copy Code |
|---|---|
public static void GetWatermarks() { Console.WriteLine( "=== GET WATERMARKS ===" ); // Loads a PdfDocument. var loadedDocument = "DocWithWatermarks.pdf"; using( var pdfInput = PdfDocument.Load( WatermarksSample.WatermarksSampleResourcesDirectory + loadedDocument ) ) { var outputFileName = "GetWatermarks.pdf"; var outputPath = WatermarksSample.WatermarksSampleOutputDirectory + outputFileName; // Creates a PdfDocument. using( var pdfOutput = PdfDocument.Create( outputPath ) ) { // Gets the first Page of the document. var page = pdfOutput.Pages.First(); // Adds a title. var titleStyle = TextStyle.WithFont( pdfOutput.Fonts.GetStandardFont( StandardFontType.Helvetica ), 15d ); page.AddParagraph( "Get Watermarks", titleStyle, new ParagraphStyle( ParagraphHorizontalAlignment.Center ) ); // Adds text. var textStyle = TextStyle.WithFontAndBrush( pdfOutput.Fonts.GetStandardFont( StandardFontType.Helvetica ), 12, Brushes.Red ); page.AddText( $"Getting watermarks from document: {loadedDocument}", new Point( 100, 100 ), textStyle ); // Gets the WatermarkDefinitions from the loaded document. var watermarkDefinitions = pdfInput.Watermarks; // For each WatermarkDefinition, displays some of its properties. for( int i = 0; i < watermarkDefinitions.Count; ++i ) { var watermarkDefinition = watermarkDefinitions[ i ]; foreach( var watermarkText in watermarkDefinition.Texts ) { page.AddText( "WatermarkText " + ( i + 1 ) + ":", new Point( 30, 150 + ( i * 65 ) ) ); page.AddText( $" Text: {watermarkText.Text}", new Point( 30, 165 + ( i * 65 ) ) ); page.AddText( $" Font name: {watermarkText.TextStyle.Font.Name}", new Point( 30, 180 + ( i * 65 ) ) ); page.AddText( $" Font size: {watermarkText.TextStyle.FontSize}", new Point( 30, 195 + ( i * 65 ) ) ); page.AddText( $" text color: {( ( SolidColorBrush )watermarkText.TextStyle.Brush ).Color}", new Point( 30, 210 + ( i * 65 ) ) ); } } // Saves the output document. pdfOutput.Save(); Console.WriteLine( $"Info exported to path: {outputFileName}" ); } } } | |