码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • 一个支持将Html页面转为PDF的.Net开源项目


    推荐一个可以将Html页面转为PDF的开源项目。

    01 项目简介

    这是一个基于.Net开发的开源项目,本质是用 Webkit 引擎将 HTML 页面转换为 PDF,可以用在控制台、 Web 应用程序和 Web API中。

    02 使用示例

    1、创建转化器

    //同步转化器
    var converter = new BasicConverter(new PdfTools());
    
    //异步转化器
    var converter = new SynchronizedConverter(new PdfTools());
    
    • 1
    • 2
    • 3
    • 4
    • 5

    在多线程程序和 Web 服务器中可以使用异步转换器,避免转换任务阻塞其他线程。

    2、定义文档格式

    var doc = new HtmlToPdfDocument()
    {
        GlobalSettings = {
            ColorMode = ColorMode.Color,
            Orientation = Orientation.Landscape,
            PaperSize = PaperKind.A4Plus,
        },
        Objects = {
            new ObjectSettings() {
                PagesCount = true,
                HtmlContent = @"

    标题1

    内容内容内容内容内容内容内容内容内容内容", WebSettings = { DefaultEncoding = "utf-8" }, HeaderSettings = { FontSize = 9, Right = "Page [page] of [toPage]", Line = true, Spacing = 2.812 } } } }
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17

    3、转换

    byte[] pdf = converter.Convert(doc);
    
    if (!Directory.Exists("Files"))
    {
        Directory.CreateDirectory("Files");
    }
    
    using (FileStream stream = new FileStream(@"Files\" + DateTime.UtcNow.Ticks.ToString() + ".pdf", FileMode.Create))
    {
        stream.Write(pdf, 0, pdf.Length);
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11

    效果如下:

    图片

    03 项目地址

    https://github.com/rdvojmoc/DinkToPdf

    更多开源项目: https://github.com/bianchenglequ/NetCodeTop

    我是编程乐趣,一个.Net开发经验老程序员,欢迎“关注”我,每天为你分享开源项目和编程知识。
    也欢迎加入【.Net技术编程交流社区】,和大家共同学习交流!,点击加入:https://bbs.csdn.net/topics/613465368

    - End -

  • 相关阅读:
    1 数据分析概述与职业操守
    git-secret:在 Git 存储库中加密和存储密钥(上)
    从Systrace看抖音Android Camera Bufferqueue渲染
    机动目标跟踪——当前统计模型(CS模型)
    数据结构与算法
    【Web】关于FastJson反序列化开始前的那些前置知识
    git之分支管理
    RSYNC远程同步
    MySQL实训--原神数据库
    爱上开源之golang入门至实战-使用IDE开发Golang
  • 原文地址:https://blog.csdn.net/daremeself/article/details/136288487
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号