2014-11-06 34 views
0

我想將當前HTML頁面(ng-view呈現後)導出爲pdf。 我正在使用EvoPDF軟件來做到這一點,但是當我試圖導出它時,ng-view中的HTML並不是以PDF形式出現的。 PDF只包含標題,因爲標題是靜態元素,而ng-view是從XmlHttpRequest構造的。EvoPDF在AngularJS應用程序中導出PDF

我試過給pdfConverter.ConversionDelay = 10;認爲由於加載時間XmlhttpRequest它不是渲染,但仍然沒有運氣。

我在.net中使用HttpModule作爲後端。

public void ProcessRequest(HttpContext context) 
    {    
     if (context.Request.UrlReferrer != null) 
     { 
      try 
      { 
       HtmlToPdfConverter pdfConverter = new HtmlToPdfConverter(); 
       pdfConverter.ConversionDelay = 10; 
       byte[] outPdfBuffer = pdfConverter.ConvertUrl(context.Request.UrlReferrer.ToString()); 

       context.Response.AddHeader("Content-Type", "application/pdf"); 

       // Instruct the browser to open the PDF file as an attachment or inline 
       context.Response.AddHeader("Content-Disposition", String.Format("{0}; filename=report.pdf; size={1}", 
        "attachment", outPdfBuffer.Length.ToString())); 

       context.Response.BinaryWrite(outPdfBuffer); 

       // End the HTTP response and stop the current page processing 
       context.Response.End(); 

      } 

     } 
    } 

您能否讓我知道如何解決這個問題。

謝謝。 Sajesh nambiar

+0

難道我們有一些您所使用的喊出口的代碼? – sam 2014-11-06 09:35:18

+0

這個問題是用源代碼編輯的,在視圖中我只是鏈接到處理程序Export to PDF 2014-11-06 09:39:31

+0

如果我很好地理解EvoPDF如何工作,它會導出一些您提供的html。問題是,如果你給它包含角度應用程序的主HTML頁面,它將只包含基本的HTML,沒有其他任何東西,因爲角度沒有執行。我從來沒有使用evopdf,所以它只是純粹的猜測。 – sam 2014-11-06 09:44:33

回答

1

沒有問題,這是我的本地系統上的CORS問題,這就是爲什麼調用取數據失敗,現在一切正常。

問候, Sajesh