簡體   English   中英

Highcharts導出功能

[英]Highcharts exporting functionality

有沒有人知道一種自動創建SVG圖表的方法,並同時導出Highacarts圖表的JPEG或PNG圖像版本(最好是$(document).ready )?

我想顯示SVG版本到屏幕並將PNG或JPEG放在隱藏的DIV中進行打印。

提前致謝。

我的解決方案自動創建我的頁面/儀表板中每個圖表的SVG的等效圖像(處於其啟動狀態),而無需用戶單獨導出它們。 這使得頁面上的所有Highcharts圖形和圖表都能正確打印,無需用戶交互。

具有Highcharts圖表的頁面無法正確打印的原因是因為圖表是使用SVG制作的,並且當前版本的常見瀏覽器不支持打印SVG(2012年1月編寫)。 因此,我的解決方案無關緊要。

我的解決方案繞過了當前的瀏覽器限制:

首先,我修改了Highcharts exporting.js以自動觸發其通常觸發當用戶手動選擇輸出圖像的步驟的程序文件。

接下來,需要注意的是,當用戶手動選擇導出圖像時,他們的請求將作為整個頁面的標頭請求發送。

因此,我對導出功能的修改不直接POST高位圖數據,而是首先將SVG和Highcharts在我的頁面/儀表板中需要的其他必要數據發送到DIV。

接收請求的每個DIV都包含一個php文件,其例程json_encodes它從導出例程接收的POST數據,然后將其作為自己的標題發送到Highcharts導出服務器。

因此,因為POST是從該DIV觸發的,所以結果將直接發送回該DIV,作為該DIV中PHP腳本的標題。

一旦它被發送回DIV我保存了圖像,只通過CSS制作DIV打印,該DIV的唯一HTML輸出是帶有圖像文件路徑的img標簽。

我使用$(document).ready觸發了所有使用圖像填充的div。

嘗試這個的其他人的一個注意事項是我的dev和live服務器的配置不同,這意味着在將其發送到Highcharts之前我必須在其中一個上stripslashes JSON。

以下帖子將指向其他任何嘗試以正確方向執行此操作的人。

使用PHP將Google Chart圖像保存到文件

發布到DIV:

在JQuery中發布表單並填充DIV - 在IE中斷開

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM