有没有办法从Kendo Spreadsheet和WYSIWYG Editor小部件的pdf导出中获取base64 dataURI,就像Kendo Gantt小部件一样?
我正在引用此Kendo UI Dojo Example以及Telerik论坛问题"Get Base64 From Export PDF"
为了从Gantt小部件成功获取base64数据,代码如下所示:
$("#gantt").kendoGantt({
toolbar: ["pdf"],
dataSource: [
{
id: 1,
orderId: 0,
parentId: null,
title: "Task1",
start: new Date("2014/6/17 9:00"),
end: new Date("2014/6/17 11:00")
}
],
pdfExport: function(e) {
e.preventDefault();
gantt._drawPDF()
.then(function(root) {
return kendo.drawing.exportPDF(root, {
// PDF options
});
})
.done(function(dataURI) {
console.log(dataURI);
// Data URI available here
});
}
});
var gantt = $("#gantt").data("kendoGantt");
您会注意到可以在pdfExport对象中.done(function(dataURI){...})
访问dataURI。
Spreadsheet和WYSIWYG Editor是否有类似内容?我搜索了文档和论坛,但没有骰子。任何帮助将不胜感激。
答案 0 :(得分:0)
使用编辑器API中的以下代码段解决了这个问题:
$("#editor").kendoEditor({
tools: ["pdf"],
value: "sample editor data"
}
});
var editor = $("#editor").data("kendoEditor");
editor._drawPDF()
.then(function(root) {
return kendo.drawing.exportPDF(root, {});
})
.then(function(dataURI) {
console.log(dataURI);
});
看起来我们能够将代码削减到最低限度,并且它以我们需要的方式运行。以下是Kendo提供的工作演示的链接:Dojo
请注意,该代码使用的内部方法似乎与PublicAPI不同。
对于电子表格......他们为此功能打开了功能请求票证。我们使用他们的服务器端API来生成PDF信息,因为似乎没有办法通过JavaScript API获取dataURI。
答案 1 :(得分:-1)
您可以使用与Kendo UI Editor完全相同的方法,但不能使用电子表格。