Как распечатать диаграмму Google с помощью itextsharp в asp.net?

Что я пытаюсь сделать, так это установить значение изображения диаграммы на hiddenfield. У меня есть работающий google chart, который создается на основе кода и назначается div_chart.

Вот мой asp-код:

     <script type="text/javascript" src="https://www.google.com/jsapi"></script>
           <center>
                <asp:ImageButton ID="ImageButton1" runat="server" ImageAlign="AbsMiddle" ImageUrl="~/images/acroread.png" OnClick="btnPDF_Click1" OnClientClick="return ExportToPDF(this)" ToolTip="Download PDF"/>
                    <asp:Button ID="btnPDF" runat="server" OnClientClick="return ExportToPDF(this)" ToolTip="Download PDF" OnClick="btnPDF_Click1" />``

                </center>

        <input id="chart_data" />
                <asp:Literal ID="ltChart" runat="server"></asp:Literal>
                <div id="div_chart" style="height: 400px; text-align: left;"></div>

</form>

Затем у меня есть код js под тегом, где я пытаюсь установить значение изображения в hiddenfield:

<script type="text/javascript" src="http://cdn.rawgit.com/niklasvh/html2canvas/master/dist/html2canvas.min.js"></script>
<script type="text/javascript">
    function ExportToPDF(btnExport) {
        ExportToImage(btnExport);
        return false;
    }
    function ExportToExcel(btnExport) {
        ExportToImage(btnExport);
        return false;
    }
    function ExportToImage(btnExport) {
        html2canvas($("#div_chart")[0]).then(function (canvas) {
            var base64 = canvas.toDataURL();
            $("[id*=chart_data]").val(base64);
            __doPostBack(btnExport.name, "");
        });
    }
</script>    

но когда я пытаюсь получить доступ к моему значению скрытого поля в отделенном коде, я получаю нулевые значения.

string base64 = Request.Form["chart_data"]

любые идеи о том, как я могу получить значение hiddenfield? или если я назначаю его неправильно: как правильно установить его?


person Eduardo G.    schedule 26.05.2017    source источник
comment
у диаграмм Google есть собственный метод для получения изображения - getImageURI - просто нужно дождаться запуска события 'ready', затем получить uri и отправить его обратно - вот пример получения изображения...   -  person WhiteHat    schedule 26.05.2017