2017-02-07 3 views
1

Dieser Code iTextSharp 5.5.10:iTextSharp: Kann nicht anhängen PageEvent auf einem PdfSmartCopy Schriftsteller

var msOutput = new MemoryStream(); 
var document = new Document(PageSize.A4, 0, 0, 0, 20); 
var writer = new PdfSmartCopy(document, msOutput); 
writer.PageEvent = new MyHeaderFooterEvents(); 

wirft „Der Betrieb aufgrund des aktuellen Status des Objekts nicht gültig“ beim Zuweisen des "writer.PageEvent" (schlägt auch fehl, wenn ein parameterloses neues Document() ausgeführt wird).

Wenn dieser Code funktioniert perfekt:

var outputStream = new MemoryStream(); 
var document = new Document(PageSize.A4, leftMargin, rightMargin, topMargin, bottomMargin); 
var writer = PdfWriter.GetInstance(document, outputStream); 
writer.PageEvent = new MyHeaderFooterEvents(); 

Jede Idee?

Antwort

1

Die Klassen Pdf[Smart]Copy sind für die schreibgeschützte Verwendung vorgesehen. Es ist in der rohen Quellcode dokumentiert:

/// Setting page events isn't possible with Pdf(Smart)Copy. 
/// Use the PageStamp class if you want to add content to copied pages. 

Hinweis auf das iText Entwicklungsteam - wenn XML Documentation Comments den <summary>-Tag anstelle des aktuellen Stil verwendet, Kommentare in Visual Studio IntelliSense angezeigt werden.

Verwandte Themen