Есть ли способ сделать диаграммы слияния?

Здесь я пытаюсь захватить диаграммы слияния как изображения при нажатии кнопки с помощью javascript.
Вот мой код javascript:

var initiateExport = false;

        function exportCharts() {
            var exportFormat = 'JPG';
            initiateExport = true;
            for (var chartRef in FusionCharts.items) {
                if (FusionCharts.items[chartRef].exportChart) {
                    document.getElementById("linkToExportedFile").innerHTML = "Exporting...";
                    FusionCharts.items[chartRef].exportChart({ "exportFormat": exportFormat });

                }
                else {

                    document.getElementById("linkToExportedFile").innerHTML = "Please wait till the chart completes rendering...";
                }
            }
        }

        function FC_Exported(statusObj) {
            if (initiateExport) {
                initiateExport = false;
                document.getElementById("linkToExportedFile").innerHTML = "";
            }

            if (statusObj.statusCode == "1") {

                document.getElementById("linkToExportedFile").innerHTML += "Export successful. View it from <a target='_blank' href='" + statusObj.fileName + "'>here</a>.<br/>";
            }
            else {
                document.getElementById("linkToExportedFile").innerHTML += "Export unsuccessful. Notice from export handler : " + statusObj.notice + "<br/>";

            }
        }

Проблема с этим заключается в том, что перед захватом изображения появляется индикатор выполнения, показывающий «захват данных». Я хочу обойти это (так как у меня есть другой код, ожидающий его завершения), чтобы изображения генерировались непосредственно при нажатии кнопки. javascript может кто-нибудь предложить метод с использованием c #?


person nitinvertigo    schedule 29.06.2012    source источник


Ответы (1)


По сути, этим Flash-диаграммам требуется некоторое время для завершения захвата данных изображения с флэш-дисплея диаграммы. Это невозможно сделать в инстансе.

Вот почему появляется индикатор выполнения, который показывает прогресс захвата данных изображения.

Вы можете скрыть настройку индикатора выполнения showExportDialog="0" в XML для диаграммы. Однако внутренний прогресс будет продолжаться.

После завершения захвата изображения Flash POST отправляет данные в сценарий на стороне сервера (обработчик экспорта), если вы используете экспорт на стороне сервера.

Если вы используете функцию экспорта на стороне клиента, диаграмма Flash вызывает событие с именем FC_ExportDataReady. Вы можете прослушать это событие, определяя функцию с тем же именем в области окна / глобальной области. Это событие предоставляет данные изображения (поток) в виде объекта JavaScript. Объект потока содержит данные изображения в формате RLE с метаданными для изображений.

Соответственно, невозможно мгновенно сгенерировать снимок диаграммы с помощью нажатия кнопки. На это потребуется время.

Это причина, по которой предоставляется событие обратного вызова FC_Exported, чтобы вы могли прослушать это событие и получить подтверждение завершения, а затем продолжить с вашим собственным кодом.

person sudipto    schedule 29.06.2012