zoukankan      html  css  js  c++  java
  • C# wkhtmltopdf 将html转pdf

    一、转换程序代码如下: 


    public string HtmlToPdf(string url) { bool success = true; // string dwbh = url.Split('?')[1].Split('=')[1]; //CommonBllHelper.CreateUserDir(dwbh); //url = Request.Url.Host + "/html/" + url; string guid = DateTime.Now.ToString("yyyyMMddhhmmss"); string pdfName = "1.pdf"; //string path = Server.MapPath("~/kehu/" + dwbh + "/pdf/") + pdfName; string path = "D:\" + pdfName; try { if (string.IsNullOrEmpty(url) || string.IsNullOrEmpty(path)) success = false;           //获取安装路径 string str = Server.MapPath("~\bin\wkhtmltopdf.exe"); Process p = System.Diagnostics.Process.Start(str, url+" "+path); p.WaitForExit(); if (!System.IO.File.Exists(str)) success = false; if (System.IO.File.Exists(path)) { FileStream fs = new FileStream(path, FileMode.Open); byte[] bytes = new byte[(int)fs.Length]; fs.Read(bytes, 0, bytes.Length); fs.Close(); if (Request.UserAgent != null) { string userAgent = Request.UserAgent.ToUpper(); if (userAgent.IndexOf("FIREFOX", StringComparison.Ordinal) <= 0) { Response.AddHeader("Content-Disposition", "attachment; filename=" + HttpUtility.UrlEncode(pdfName, Encoding.UTF8)); } else { Response.AddHeader("Content-Disposition", "attachment; filename=" + pdfName); } } Response.ContentEncoding = Encoding.UTF8; Response.ContentType = "application/octet-stream"; //通知浏览器下载文件而不是打开 Response.BinaryWrite(bytes); Response.Flush(); Response.End(); fs.Close(); System.IO.File.Delete(path); } else { Response.Write("文件未找到,可能已经被删除"); Response.Flush(); Response.End(); } } catch (Exception ex) { success = false; } return ""; }

      二、调用代码

    public void test()
    {
    HtmlToPdf("http://www.deriva.cn");
    }

     程序下载地址:https://download.csdn.net/download/u013178416/10421114

  • 相关阅读:
    RAID
    变量的内存位置
    OSI网络结构的七层模型 TCP/IP层次模型
    IT公司【应聘】
    ajax的一个最简单例子
    优先级反转问题
    问一道算法题:算出这些直线一共有多少个交点
    一个女研究生(高级测试工程师)的职业选择 ZZ
    使用SWIG实现C/C++与其他语言间的互相调用 zz
    创建系统级热键 C++ builder为例
  • 原文地址:https://www.cnblogs.com/louby/p/9051981.html
Copyright © 2011-2022 走看看