Как мне отредактировать / отправить шаблон PDF в электронном письме? - PullRequest
0 голосов
/ 02 июня 2011

У меня есть шаблон, который я хотел бы изменить и отправить по электронной почте. У меня есть следующий код, но отредактированный PDF-файл говорит, что мои данные «повреждены и не могут быть восстановлены». Я не уверен, что вытащил отредактированный PDF для отправки. Любая помощь приветствуется.

   using (MemoryStream ms = new MemoryStream())  
    {    
        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();

        MailMessage msg = new MailMessage();

        msg.To.Add(new MailAddress("to@email.com"));
        msg.From = new MailAddress("from@email.com");
        msg.Subject = "Application Form";
        msg.Body = "TEST";
        msg.IsBodyHtml = true;
        ms.Position = 0;
        msg.Attachments.Add(new Attachment(ms, "Application.pdf", "application/x-pdf"));
        SmtpClient client = new SmtpClient("10.1.1.15");
        client.UseDefaultCredentials = true;
    }

1 Ответ

1 голос
/ 02 июня 2011

Я думаю, что когда вы закончите записывать данные в MemoryStream, вам нужно сбросить позицию потока в 0, прежде чем читать из него снова.

Попробуйте использовать FileStream вместо MemoryStream для сохранения во временный файл, чтобы можно было сузить проблему.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...