如何保存已编辑的pdf?

MrM*_*MrM 9 .net c# pdf asp.net itextsharp

我想保存一个经过编辑的pdf模板.我怎么做?

using (MemoryStream ms = new MemoryStream())  
{    
    PdfReader reader = new PdfReader("~/Content/Documents/Agreement.pdf");
    PdfStamper formFiller = new PdfStamper(reader, ms);
    AcroFields formFields = formFiller.AcroFields;
    formFields.SetField("Name", formData.Name);
    formFields.SetField("Location", formData.Address);
    formFields.SetField("Date", DateTime.Today.ToShortDateString());
    formFields.SetField("Email", formData.Email);
    formFiller.FormFlattening = true;
    formFiller.Close();
}
Run Code Online (Sandbox Code Playgroud)

yms*_*yms 3

本例所示,您只需使用 FileStream 而不是 MemoryStream。

代码应该如下所示:

string newFile = @".\FormDocument_out.pdf";    
FileStream fs = new FileStream(newFile, FileMode.Create);    
try
{
        PdfReader reader = new PdfReader("~/Content/Documents/Agreement.pdf");
        PdfStamper formFiller = new PdfStamper(reader, fs);  
        AcroFields formFields = formFiller.AcroFields;
        formFields.SetField("Name", formData.Name);
        formFields.SetField("Location", formData.Address);
        formFields.SetField("Date", DateTime.Today.ToShortDateString());
        formFields.SetField("Email", formData.Email);
        formFiller.FormFlattening = true;
        formFiller.Close();
}
catch(Exception)
{
    throw;
}
finally
{
    fs.Close();
}
Run Code Online (Sandbox Code Playgroud)