广告
返回顶部
首页 > 资讯 > 精选 >c#免费组件html转pdf怎么实现
  • 765
分享到

c#免费组件html转pdf怎么实现

2023-07-02 08:07:20 765人浏览 薄情痞子
摘要

这篇文章主要介绍了C#免费组件html转pdf怎么实现的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇c#免费组件html转pdf怎么实现文章都会有所收获,下面我们一起来看看吧。1.在guget下载组件如上有Se

这篇文章主要介绍了C#免费组件htmlpdf怎么实现的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇c#免费组件html转pdf怎么实现文章都会有所收获,下面我们一起来看看吧。

    1.在guget下载组件

    c#免费组件html转pdf怎么实现

    如上有Select.HtmlToPdf和 Select.HtmlToPdf.netcore,两种的使用差不多,只是Select.HtmlToPdf.netcore支持CSS效果更好,不过Select.HtmlToPdf.netcore只支持win,不支持linux,这个有点坑,其他还好,接下来我们使用Select.HtmlToPdf.netcore进行演示

    2.使用:直接上代码

     static void Main(string[] args)        {            try            {                string fullPath = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "文件夹", "文件夹下的html文件");                string line = "";                var testStr = new StringBuilder();                using (StreamReader sr = new StreamReader(fullPath))                {                    while ((line = sr.ReadLine()) != null)                    {                        testStr.Append(line);                    }                }                SelectPdf.HtmlToPdf converter = new SelectPdf.HtmlToPdf();                PdfDocument doc = new PdfDocument();                for (int i = 0; i < 10; i++)                {                    testStr.Replace("#ImageUrl#", Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "文件夹", "文件夹下的图片"));//由于html中图片,使用相对地址解析不出来,所以使用替换方式去解决                    var docStr = converter.ConvertHtmlString(testStr.ToString());                    doc.Append(docStr);                }                doc.Save("xxxx");保存到xxx路径下                doc.Close();             }            catch (Exception e)            {                //dosomething             }            Console.ReadLine();        }    }

    如上一次性打印多张pdf,思路:

    在本地找到要转换的html文件,当然你也可以配置在程序里面,通过流的形式读出来,也可用file的方法去读,拿到html字符串

    创建一个html转pdf的对象,创建一个新的pdf文件对象

    通过html转pdf对象的converthtmlstring去获取html字符串,另外还提供converurl的方法去把一个网页转换换成pdf,是不是很方便切功能强大。

    save用来保存pdf的路径,关闭pdf对象,操作文成,即可看到

    这样就是实现了html 转pdf,另外,这个组件还提供了很多api可用

    C#如何将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 "";        }
    protected void Page_Load(object sender, EventArgs e){HtmlToPdf("http://www.deriva.cn");}

    关于“c#免费组件html转pdf怎么实现”这篇文章的内容就介绍到这里,感谢各位的阅读!相信大家对“c#免费组件html转pdf怎么实现”知识都有一定的了解,大家如果还想学习更多知识,欢迎关注编程网精选频道。

    --结束END--

    本文标题: c#免费组件html转pdf怎么实现

    本文链接: https://www.lsjlt.com/news/340556.html(转载时请注明来源链接)

    有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

    本篇文章演示代码以及资料文档资料下载

    下载Word文档到电脑,方便收藏和打印~

    下载Word文档
    猜你喜欢
    • c#免费组件html转pdf怎么实现
      这篇文章主要介绍了c#免费组件html转pdf怎么实现的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇c#免费组件html转pdf怎么实现文章都会有所收获,下面我们一起来看看吧。1.在guget下载组件如上有Se...
      99+
      2023-07-02
    • c#免费组件html转pdf的实现过程
      目录免费组件html转pdf背景1.在guget下载组件2.使用:直接上代码C#如何将html转pdf免费组件html转pdf 背景 我们在公司可能遇到一些文件转pdf的场景,这里主...
      99+
      2022-11-13
    • Java怎么实现Word/Pdf/TXT转html
      本篇内容介绍了“Java怎么实现Word/Pdf/TXT转html”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有...
      99+
      2022-10-19
    • C#怎么实现将PDF转为Excel
      这篇文章主要介绍了C#怎么实现将PDF转为Excel的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇C#怎么实现将PDF转为Excel文章都会有所收获,下面我们一起来看看吧。通常,PDF格式的文档能支持的编辑功能...
      99+
      2023-06-29
    • C#怎么实现OFD格式与PDF格式互转
      本篇内容主要讲解“C#怎么实现OFD格式与PDF格式互转”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“C#怎么实现OFD格式与PDF格式互转”吧!OFD转为PDFOFD格式的文档是一种我国独有的...
      99+
      2023-06-29
    • C++怎么实现旋转数组
      本篇内容主要讲解“C++怎么实现旋转数组”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“C++怎么实现旋转数组”吧!Rotate Array 旋转数组Given an array, rotate ...
      99+
      2023-06-20
    • Python怎么将pdf转为图片?Python如何实现pdf文件转图片
      而pdf则是用来保存一些内容已经确定好的数据,因为pdf是无法直接修改内容的,所以也会经常将pdf转为图片来保存。本文就将会来介绍一下pdf转图片的方法,往下看看吧。 1.pdf转图片的话主要实现所需要的模块叫做PyMuPDF,它就是用来...
      99+
      2023-09-02
      python Powered by 金山文档
    • C#中怎么实现字符数组转换
      这期内容当中小编将会给大家带来有关C#中怎么实现字符数组转换,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。C#字符数组转换字符串类 System.String 提供了一个 void ToCharArray...
      99+
      2023-06-17
    • 怎么使用Python代码实现一款永久免费PDF编辑工具
      今天小编给大家分享一下怎么使用Python代码实现一款永久免费PDF编辑工具的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。P...
      99+
      2023-07-02
    • 怎么使用C#/VB.NET实现将Html转为Word
      这篇文章主要讲解了“怎么使用C#/VB.NET实现将Html转为Word”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“怎么使用C#/VB.NET实现将Html转为Word”吧!1.通过NuG...
      99+
      2023-07-02
    • C#怎么实现DataTable转TXT、CSV文件
      这篇文章主要介绍了C#怎么实现DataTable转TXT、CSV文件的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇C#怎么实现DataTable转TXT、CSV文件文章都会有所收获,下面我们一起来看看吧。转TX...
      99+
      2023-06-29
    • C#中怎么实现控件数组
      在C#中,可以使用控件数组来实现一组相关的控件的管理和操作。下面是实现控件数组的一种常见方法: 声明一个控件数组变量: Cont...
      99+
      2023-10-25
      C#
    • C++怎么实现每k个一组翻转链表
      本篇内容主要讲解“C++怎么实现每k个一组翻转链表”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“C++怎么实现每k个一组翻转链表”吧!Reverse Nodes in k-Group 每k个一组...
      99+
      2023-06-20
    • vue旋转木马组件demo怎么实现
      本文小编为大家详细介绍“vue旋转木马组件demo怎么实现”,内容详细,步骤清晰,细节处理妥当,希望这篇“vue旋转木马组件demo怎么实现”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。实现步骤1.确定组件类型确...
      99+
      2023-07-05
    • 前端怎么实现.md文件转换成.html文件
      这篇文章主要为大家展示了“前端怎么实现.md文件转换成.html文件”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“前端怎么实现.md文件转换成.html文件”这...
      99+
      2022-10-19
    • C#怎么实现XML文件与DataTable、Dataset互转
      本篇内容介绍了“C#怎么实现XML文件与DataTable、Dataset互转”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!一、DataTa...
      99+
      2023-06-30
    • C++怎么实现在旋转有序数组中搜索
      这篇文章主要介绍了C++怎么实现在旋转有序数组中搜索的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇C++怎么实现在旋转有序数组中搜索文章都会有所收获,下面我们一起来看看吧。Search in Rotated S...
      99+
      2023-06-19
    • C#怎么使用XSLT实现xsl、xml与html相互转换
      这篇“C#怎么使用XSLT实现xsl、xml与html相互转换”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“C#怎么使用XS...
      99+
      2023-06-30
    • C#怎么实现数组元素的数据类型转换
      这篇文章主要介绍“C#怎么实现数组元素的数据类型转换”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“C#怎么实现数组元素的数据类型转换”文章能帮助大家解决问题。一、场景假设假设有一串字符串如下所示,字...
      99+
      2023-06-30
    • SAP和Hybris Commerce里的跨组件跳转怎么实现
      这篇文章主要讲解了“SAP和Hybris Commerce里的跨组件跳转怎么实现”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“SAP和Hybris Commerce里的跨组件跳转怎么实现”吧...
      99+
      2023-06-04
    软考高级职称资格查询
    编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
    • 官方手机版

    • 微信公众号

    • 商务合作