나는 지난 며칠 동안 HTML 문자열을 입력으로 사용하는 사용하기 쉬운 라이브러리를 검색하고 클라이언트 브라우저에 파일로 PDF 출력을 생성하는 데 많은 시간을 보냈다.HTML을 PDF로 변환 - 거의 작동하지만
제가 시도한 몇 가지 도구 중 NReco PDF Generator이라는 제품이 wkhtmltopdf에 기반한 많은 파생 툴 중 하나 인 것은 내 필요에 맞는 것 같습니다.
가 여기 내 테스트 코드입니다 : 위의 코드와
var strHtml = String.Format("<h1>Hello World!</h1");
Response.Clear();
Response.ClearHeaders();
Response.ContentType = "application/pdf";
Response.AddHeader("Content-Disposition", "attachment; filename=test.pdf");
(new NReco.PdfGenerator.HtmlToPdfConverter()).GeneratePdf(strHtml, null, Response.OutputStream);
Response.End();
, 나는 PDF 파일이 브라우저에 전달되는 것을 볼 것으로 예상. 대신 개발자 콘솔에서 생성되는 출력 스트림 만 볼 수 있습니다. (BTW, 나는 크롬을 사용하고있다)
내 질문은 의도 한대로 작동한다고 생각하는 제품이 어떻게 작동하는지에 관한 것이 아니라 내 코드가 .NET의 Response
개체에 대한 동작을 빠뜨리는 지 여부와 관련이있다. 아무것도 잘못하고있다. 앞에서 설명한 것처럼 변환 된 Pdf 스트림을 콘솔에서 볼 수 있습니다. 파일의 스트림을 캡처하여 클라이언트에 전달하는 것만으로도 충분하다고 생각합니다.
메이슨 (물론, 당신이
using NReco.PdfGenerator;
을 추가해야합니다)에 대한다음 작품 -이 중 하나입니다 전에 시도한 몇 가지 접근 방식과 작동하는 것처럼 보이지만 PDF가 브라우저로 전달되는 것을 보지 못했습니다. – BinaryCat
브라우저의 디버깅 도구를 사용하여 서버의 응답을 검사하십시오. 파일이 가로 질러 가거나 HTML 문서에 어떻게 든 포함되는지 확인하십시오. – mason