using iText.Kernel.Colors; using iText.Kernel.Pdf; using iText.Kernel.Pdf.Canvas; #if NETFRAMEWORK using System.IO; using System; #endif namespace EnvelopeGenerator.PdfEditor #if NET ; #elif NETFRAMEWORK { #endif public static class Extensions { public static TStream Edit(this TStream inputStream, Action edit) where TStream : Stream, new() { using (var outputStream = new TStream()) { using (var pdfDoc = new PdfDocument(new PdfReader(inputStream), new PdfWriter(outputStream))) { edit(pdfDoc); } return outputStream; } } public static byte[] Edit(this byte[] pdfBytes, Action edit) { using (var inputStream = new MemoryStream(pdfBytes)) { return inputStream.Edit(edit).ToArray(); } } } #if NETFRAMEWORK } #endif