/// <summary>Processes content from the specified page number using the specified listener.</summary> /// <remarks> /// Processes content from the specified page number using the specified listener. /// Also allows registration of custom ContentOperators /// </remarks> /// /// <param name="pageNumber">the page number to process</param> /// <param name="renderListener">the listener that will receive render callbacks</param> /// <param name="additionalContentOperators">an optional map of custom ContentOperators for rendering instructions /// </param> /// <returns>the provided renderListener</returns> public virtual E ProcessContent <E>(int pageNumber, E renderListener, IDictionary <String, IContentOperator> additionalContentOperators) where E : IEventListener { PdfCanvasProcessor processor = new PdfCanvasProcessor(renderListener); foreach (KeyValuePair <String, IContentOperator> entry in additionalContentOperators) { processor.RegisterContentOperator(entry.Key, entry.Value); } processor.ProcessPageContent(pdfDocument.GetPage(pageNumber)); return(renderListener); }