0
你好,大家好我在PDF从我的HTML内容生成付款发票秩序,通过e-mail用下面的代码发送它:PDF但没有渲染HTML教程ASP.NET
***//Generates PDF Payment Invoice***
StringBuilder sb = new StringBuilder();
sb.Append(@"<meta http-equiv=""Content-Type"" content=""text/html; charset=utf-8"">");
sb.Append(boletoBancario.MontaHtml());
StringReader sr = new StringReader(sb.ToString());
Document pdfDoc = new Document(PageSize.A4, 10f, 10f, 10f, 0f);
HTMLWorker htmlparser = new HTMLWorker(pdfDoc);
byte[] bytes;
memoryStream = new MemoryStream();
PdfWriter writer = PdfWriter.GetInstance(pdfDoc, memoryStream);
pdfDoc.Open();
iTextSharp.text.html.simpleparser.StyleSheet ST = new iTextSharp.text.html.simpleparser.StyleSheet();
ST.LoadTagStyle("body", "encoding", "Identity-H");
htmlparser.SetStyleSheet(ST);
htmlparser.Parse(sr);
pdfDoc.Close();
bytes = memoryStream.ToArray();
memoryStream.Close();
memoryStream = new MemoryStream(bytes);
***//Sends E-mail with PDF PAYMENT INVOICE Attached***
MailAddress de = new MailAddress(enderecoOrigem, HttpUtility.HtmlDecode(nomeOrigem));
MailAddress para = new MailAddress(enderecoDestino, HttpUtility.HtmlDecode(nomeDestino));
MailMessage mensagem = new MailMessage(de, para);
NetworkCredential credential = new NetworkCredential(usuarioConta, senhaConta);
SmtpClient smtp = new SmtpClient();
smtp.Host = servidorSMTP;
smtp.Port = Convert.ToInt32(porta);
MailAddressCollection comCopia;
Attachment att = new Attachment(memoryStream, "Boleto.pdf", MediaTypeNames.Application.Pdf);
mensagem.Attachments.Add(att);
mensagem.Subject = "Payment Invoice";
mensagem.Body = String.Format("Your payment invoice is available.");
mensagem.IsBodyHtml = true;
smtp.UseDefaultCredentials = true;
smtp.EnableSsl = false;
smtp.Send(mensagem);
的问题是,附在电子邮件中的PDF不能正确呈现HTML,因此它仍然没有形成。否则,当我创建一个空白文件,并把整个HTML并打开它使用Chrome它非常合适。
我需要将此PDF正确地附加到电子邮件中。
有人能帮助我吗? Here You can see the Rendering Problem