2011-04-01 5 views
1

내 ASP.Net을 PDF로 내보내기가 어려워졌습니다. 내 코드는 다음과 같습니다. 도와주세요.ASP.Net 페이지를 PDF로 내보내기

Response.Clear();  
Response.Buffer = true;  
Response.Charset = Encoding.UTF8.HeaderName;  
Response.ContentEncoding = Encoding.UTF8; 

Response.Write(string.Format("<meta http-equiv=Content-Type content=text/html;charset={0}>", Encoding.UTF8.HeaderName)); 

Response.ContentType = "application/pdf";  
Response.Headers.Add("Content-disposition", "attachment; filename=pdffilename.pdf"); 

StringBuilder sb = new StringBuilder();  
sb.Append("MIME-Version: 1.0\r\n");  
sb.Append("X-Document-Type: Worksheet\r\n");  
sb.Append("Content-Type: multipart/related; boundary=\"----=mtrSystem\"\r\n\r\n\r\n");  
sb.Append("------=mtrSystem\r\n");  
sb.Append("Content-Type: text/html; charset=\"utf-8\"\r\n");  
sb.Append("<html xmlns:o=\"urn:schemas-microsoft-com:office:office\"\r\n");  
sb.Append("xmlns:x=\"urn:schemas-microsoft-com:office:pdf\">\r\n\r\n\r\n");  
sb.Append("------=mtrSystem\r\n");  
sb.Append("Content-ID: baiduimg\r\n");  
sb.Append("Content-Transfer-Encoding: base64\r\n");  
sb.Append("Content-Type: image/png\r\n\r\n"); 

이 방법으로 ASP.Net 페이지를 PDF로 내보낼 수 있습니까? 나는 당신이해야 할 노력하고 있지만, 일반적으로 내가보기 엔 코드에서 PDF 문서를 생성하기위한 PDFSharp을 추천 할 수있는 완전히 확실하지 않다

+1

아마,하지만 대신 HttpHandler를 사용하여 http://pdfsharp.com/PDFsharp/를 살펴보십시오. – tvanfosson

+0

어떤 문제가 있습니까? 너 뭐 해봤 니? 오류가 발생한 위치를 좁히기 위해 수행 한 단계는 무엇입니까? 어떤 오류가 발생하고 있습니까? 이 코드로 무엇을하려합니까? –

답변

0

...

2

Html-to-pdf.net는에 HTML을 변환 할 수 있습니다 pdf.

public byte[] GetPdfBytesFromHtmlString (string htmlString) 

당신은 다음 보낼 응답 바이트를 저장할 수 있습니다

StringWriter sw = new StringWriter(); 
Server.Execute("PageToConvert.aspx", sw); 
string htmlCodeToConvert = sw.GetStringBuilder().ToString(); 

가 그런 다음 PDF 발생기에 HTML을 전달합니다 asp.net 페이지에서 HTML을하려면, 다음 코드를 사용 클라이언트에 저장하거나 서버에 로컬 파일로 저장하십시오.

편집 : 명심해야 할

뭔가, cost money을 수행하지만 내 마지막 프로젝트는 정당한 비용이었다 HTML - 투 - PDF. 평가판을 사용하여 필요한 것을 파악할 수 있습니다.

관련 문제