私はケンドーイデータヴィッツチャートを使用しており、これらのチャートを(.png)または(.jpg)イメージフォーマットにエクスポートする必要があります。 基本的にkendoui datavizチャートには、 'svg()'という組み込みメソッドがあります。Save-Asウィンドウをポップアップすることで、kendoui datavizグラフを(.png)または(.jpg)形式にエクスポートする方法は?
'svg()'現在のグラフのSVG表現を返します。返される文字列は、自己完結型のSVGドキュメントです。今
例
var chart = $("#chart").data("kendoChart"); var svgText = chart.svg();誰もがどのように実際の画像フォーマットにこれらのデータを変換し、プロンプトとして 保存をポップアップを教えimage..can svgTextは、チャートの詳細が含まれています???
コード例:私はこれを試してみましたが、それはどんな '名前を付けて保存' のポップアップを要求しません
<div id="example" class="k-content">
<div class="chart-wrapper">
<div id="chart"></div>
<center>
<div>
<input type="button" value="click" onclick="disp();" />
</div>
</center>
<div>
<canvas id="canvas"></canvas>
</div>
</div>
</div>
<script type="text/javascript">
function disp() {
var chart = $("#chart").data("kendoChart");
var svgText = chart.svg();
var c = document.getElementById('canvas');
canvg(c,svgText);
var img = c.toDataURL("image/png");
document.write('<img src="' + img + '"/>');
window.win = open(imgOrURL);
setTimeout('win.document.execCommand("SaveAs")', 100);
}
function createChart() {
$("#chart").kendoChart({
theme: $(document).data("kendoSkin") || "default",
title: {
text: "Internet Users"
},
legend: {
position: "bottom"
},
chartArea: {
background: ""
},
seriesDefaults: {
type: "bar"
},
series: [{
name: "World",
data: [15.7, 16.7, 20, 23.5, 26.6]
}, {
name: "United States",
data: [67.96, 68.93, 75, 74, 78]
}],
valueAxis: {
labels: {
format: "{0}%"
}
},
categoryAxis: {
categories: [2005, 2006, 2007, 2008, 2009]
},
tooltip: {
visible: true,
format: "{0}%"
}
});
}
$(document).ready(function() {
setTimeout(function() {
createChart();
},100);
$(document).bind("kendo:skinChange", function (e) {
createChart();
});
});
<script>
実際のプロblemは 'img'タグの 'src'属性を表現しているので、 'base64'形式を使用して画像をロードします – Trikarandas
ねえ、あなたは解決策を見つけましたか?この質問/回答を見てください:http://stackoverflow.com/questions/2483919/how-to-save-svg-canvas-to-local-filesystem –