0

EVO PDF を使用して、複数の Web ページを 1 つの PDF に結合しています。以下のコードは、それがどのように機能するかを示しています...そして機能します。セクションをコメントアウトしてそのままSystem.Web.HttpResponse配置Response.Write(htmlCodeToConvert);すると、両方の Web ページが 1 つの Web ページに表示され、PDF のダウンロードはありません。

私が本当にやりたいことは両方です - 単一の結合された Web ページを表示し、PDF ダウンロードプロンプトも表示したいです。どちらか一方を機能させることはできますが、同時に両方を機能させることはできません。これは可能ですか?

  StringWriter htmlStringWriter = new StringWriter();

  Server.Execute("Page1.aspx", htmlStringWriter);
  Server.Execute("Page2.aspx", htmlStringWriter);

  string htmlCodeToConvert = htmlStringWriter.GetStringBuilder().ToString();
  htmlStringWriter.Close();

  // get the pdf bytes from html string
  byte[] pdfBytes = pdfConverter.GetPdfBytesFromHtmlString(htmlCodeToConvert);

  // send the PDF document as a response to the browser for download
  System.Web.HttpResponse response = System.Web.HttpContext.Current.Response;
  response.Clear();
  response.AddHeader("Content-Type", "application/pdf");
  response.AddHeader("Content-Disposition", String.Format("attachment; filename=MyFile.pdf; size={0}", pdfBytes.Length.ToString()));
  response.BinaryWrite(pdfBytes);
  response.End();
4

1 に答える 1