2012-05-09 32 views
4

我正在努力將HighStock/HighCharts嵌入到我們的網站中,我們希望使用戶能夠導出圖表而無需將數據發送到HighCharts服務器以呈現jpg/pdf/svg等。我能找到的唯一的ASP.NET包裝是this。這很適合在本地演示構建但這個整合到我們的產品網站是給一個空白頁: http://oursite.com/path/where/called/HighchartsExport.axd使用HighchartsExport庫.Net我得到空白頁面

繼稀疏文件我覈實,我已經加入到所需的3個DLL文件的引用。我們的網站已經使用了需要的requestValidationMode(2.0)。所以我添加了httpHandlers項目:

<add verb="POST" path="HighchartsExport.axd" type="Tek4.Highcharts.Exporting.HttpHandler, Tek4.Highcharts.Exporting"/> 

我不知道還有什麼需要在這裏得到這個工作。任何幫助將不勝感激。

+0

供參考:在Asp .net核心附帶Microsoft.Aspnet.Nodeservices,通過它我們可以觸發Highcharts **新**節點導出服務器並返回圖表作爲一個圖像。你可以檢查示例實現[使用nodeservices](https://davidsekar.com/angular/server-side-rendering-of-highcharts-in-net-core) –

回答

0

我以前遇到過類似的問題,問題出在HTML導致導出錯誤的部分。 如果圖表HTML中存在剪輯路徑標記,請嘗試在導出之前將其刪除。

+0

不確定你指的是什麼。這是一個基本的折線圖(或任何基本圖表......用作示例)。如果highcharts將剪輯路徑添加到SVG,那麼我可以做的不多 - 我不是手動添加剪輯路徑。 – wergeld

+0

問題是您沒有使用HighCharts導出,因此使用第三方導出時可能會發生一些問題。 HighCharts生成的一些標籤不被其他導出工具所理解。 在我的情況下,我編輯生成的HTML在運行時,然後導出它,它工作正常。 –

+0

不是。如果我創建了一個獨立的站點,並添加了一個靜態圖表+此導出.NET庫,我可以導出導出。但是,當與我們的完整網站集成時,它不會使用相同的靜態圖表導出。所以,我們的內部與.NET庫期望的有一些衝突。 – wergeld

1

在將SVG發送到ASP.NET導出模塊之前,運行chart.getSVG()可能會有所幫助。這將清理表示圖表的SVG。

當這個asp導出模塊不適合你時,你可以考慮使用PhantomJS並運行一個shell命令,用於PhantomJS的Highcharts convert script。或者,可以將此腳本作爲內部網絡服務器運行,並從您的.NET應用程序執行POST請求。這就是Highcharts的java導出服務器通常工作的方式。閱讀更多關於Highcharts,PhantomJS和導出到圖像here

+0

我們實際上已經嘗試遷移到highcharts-export Java服務器。我有一個問題在最近的版本中試圖讓它在Windows下工作 - 它曾經在1月份恢復工作,但它看起來像配置選項是不同的。 – wergeld

+0

是Highcharts升級了此服務器。在使用Batik和PhantomJS之前,現在只有PhantomJS。順便說一句我回答了你的問題,[這裏](http://stackoverflow.com/questions/16670730/highcharts-export-server-2-0-1-errors-under-windows/16737983#16737983)。 –