【问题标题】:Change the save location更改保存位置
【发布时间】:2016-02-10 04:38:30
【问题描述】:

我正在使用下面的代码将 pdf 保存在我的 MVC Razor 中。

kendo.drawing.drawDOM($("#testDiv")).then(function(group)
{

        group.options.set("pdf", {            
            margin: {
                left: "10mm",
                top: "20mm",
                right: "10mm",
                bottom: "20mm"
            }
        });
        debugger;
        kendo.drawing.pdf.saveAs(group, "save.pdf");
    });

问题:是否可以将文件(pdf)保存在服务器中? 非常感谢任何帮助。

提前致谢。

【问题讨论】:

    标签: asp.net-mvc kendo-ui telerik kendo-asp.net-mvc telerik-mvc


    【解决方案1】:

    kendo.drawing.pdf.saveAs(group,"save.pdf"); 会将文件推送到客户端的机器上。

    试试这个,将它存储在服务器中。

    void savetoServer()
    {
           StringBuilder stringBuilder = new StringBuilder();
            StringWriter writer = new StringWriter(stringBuilder);
            HtmlTextWriter htmlWriter = new HtmlTextWriter(writer);
            try {
                testDiv.RenderControl(htmlWriter);
            } catch (HttpException generatedExceptionName) {
            }
    
    
            var fileContents = stringBuilder.ToString();
            var fileName = string.Format("drawing{0}.pdf", "[Your custom file name]");
            string path = Path.Combine(Server.MapPath("~/Pdfs/"), Path.GetFileName(fileName)); 
    
           //in above line "Pdfs" will map to the folder in your application root folder.
    
            File.WriteAllBytes(path,fileContents);
    }
    

    【讨论】:

    • 嗨巴拉吉,谢谢您的回复。在我的问题中,“#testDiv”是一个 div 的 ID。我正在将 div 数据转换为 PDF。我的问题是如何将整个 div 数据传递到服务器并保存在指定的服务器位置。
    • @NareshReddy testDiv.RenderControl(htmlWriter); 会将文本转换为纯字符串,但如果您需要精确的样式,包括 div 的图像和表格。您可以使用 iTextSharp 库,将其包含在您的应用程序中。您可以在此链接中找到教程和dll文件,这绝对可以解决您的问题aspsnippets.com/Articles/…
    猜你喜欢
    • 1970-01-01
    • 2010-11-20
    • 1970-01-01
    • 2017-04-24
    • 1970-01-01
    • 2015-04-30
    • 1970-01-01
    • 2020-05-25
    • 1970-01-01
    相关资源
    最近更新 更多