I don't know if I'm missing something (I'm no iTextSharp expert by any means), but everything I've read about iTextSharp's PdfStamper class says that upon calling of the Close() method, it should write whatever stream (so a FileStream should then get written to disk). The below using statements should automatically close those methods I believe, but even when I've manually called PdfStamper.Close() inside the using statements, my new file doesn't get written to disk. Could someone please tell me why? Thanks in advance.
var outputStream = new FileStream("SamplePDFs\\SampleOutput.pdf", FileMode.Create);
using (var pdfReader = new PdfReader("SamplePDFs\\SampleInput.pdf"))
using (var pdfStamper = new PdfStamper(pdfReader, outputStream))
{
foreach (var field in pdfReader.AcroForm.Fields)
{
Console.WriteLine("Name: " + field.Name);
if(field.Name == "SomeField")
{
var stamperFields = pdfStamper.AcroFields;
stamperFields.SetField(field.Name, "TESTING");
}
}
}