一个具有强大PDF处理能力的.Net开源项目

PDF具有跨平台、可读性强、不可修改性、无需特定阅读软件、内容安全等好处,在工作中经常都会用到。

所以,我们在项目开发中,经常需要生成PDF的文件,或者把Html、Xml等文件转化为PDF格式。

今天给大家推荐一个具有PDF处理能力的.Net开源项目:itext7-dotnet,就可以满足我们开发需求。

01 项目简介

itext7-dotnet是一个功能强大的库,专门为.Net设计,用于创建、编辑和操作PDF文件,可以帮我们快速、高效得处理PDF文件。

该项目支持创建各种类型的PDF文件,包含基本文本文档、表格、图像、连接等。还具有强大的编辑功能,比如调整页面布局、添加水印等。

此外还支持加密功能、国际化等特性、支持PDF/A、PDF/UA等。

02 项目功能

**1、核心功能:**布局引擎、合并PDF、数字签名、表单创建与操作、PDF/A、PDF/UA、FIPS加密、条形码生成、支持SVG;

**2、其他插件功能:**支持XML/Html转为PDF、隐藏PDF敏感信息、支持国际化、可压缩PDF大小提高性能、XFA表单转为PDF、PDF诊断;

**3、文档:**针对以上功能,该项目都有详细的代码示例。

图片

03 使用示例

1、安装依赖库

图片

2、示例代码

using iText.Kernel.Pdf;
using iText.Layout;
using iText.Layout.Element;
using iText.Layout.Properties;

// 创建一个新的PDF文档  
PdfDocument pdf = new PdfDocument(new PdfWriter("output.pdf"));
Document document = new Document(pdf);

// 添加一个表格到PDF中  
Table table = new Table(3); // 3列的表格  
table.SetWidth(100); // 设置表格宽度为100%  
table.SetHorizontalAlignment(HorizontalAlignment.CENTER); // 居中对齐  
table.AddCell("Name"); // 添加表头  
table.AddCell("Age");
table.AddCell("Country");
table.AddCell("John Doe"); // 添加行数据  
table.AddCell("30");
table.AddCell("USA");
table.AddCell("Jane Smith");
table.AddCell("25");
table.AddCell("UK");
table.AddCell("Bob Johnson");
table.AddCell("40");
table.AddCell("Canada");
document.Add(table);

// 关闭文档  
document.Close();

3、生成效果

图片

04

项目地址

https://github.com/itext/itext7-dotnet

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

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

- End -

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/410426.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

计算机设计大赛 深度学习大数据物流平台 python

文章目录 0 前言1 课题背景2 物流大数据平台的架构与设计3 智能车货匹配推荐算法的实现**1\. 问题陈述****2\. 算法模型**3\. 模型构建总览 **4 司机标签体系的搭建及算法****1\. 冷启动**2\. LSTM多标签模型算法 5 货运价格预测6 总结7 部分核心代码8 最后 0 前言 &#x1f5…

vue - - - - Vue3+i18n多语言动态国际化设置

Vue3i18n多语言动态国际化设置 前言一、 i18n 介绍二、插件安装三、i18n配置3.1 创建i18n对应文件夹/文件3.2 en-US.js3.3 zh-CN.js3.4 index.js 四、 mian.js 引入 i18n配置文件五、 组件内使用六、使用效果 前言 继续【如何给自己的网站添加中英文切换】一文之后&#xff0c…

Folx Pro Mac中文p破解版如何使用?为您带来Folx Pro 详细使用教程!

​ Folx pro 5 中文版是mac上一款功能强大的老牌加速下载软件,新版本的Folx pro整体界面非常的简洁和漂亮,具有非常好用的分类管理功能,支持高速下载、定时下载、速度控制、iTunes集成等功能。Folx pro兼容主流的浏览器,不但可以下…

AI对话系统app开源

支持对接gpt,阿里云,腾讯云 具体看截图 后端环境:PHP7.4MySQL5.6 软件:uniapp 废话不多说直接上抗揍云链接: https://mny.lanzout.com/iKFRY1o1zusf 部署教程请看源码内的【使用教程】文档 欢迎各位转载该帖/源码

【postgresql】数据表id自增与python sqlachemy结合实例

需求: postgresql实现一个建表语句,表名:student,字段id,name,age, 要求:每次添加一个数据id会自动增加1 在PostgreSQL中,您可以使用SERIAL或BIGSERIAL数据类型来自动生成主键ID。以下是一个创建名为stude…

Jmeter系列(1)Mac下载安装启动

目录 Jmeter下载安装启动下载启动 Jmeter下载安装启动 注意⚠️:使用jmeter需要有java环境 下载 官网下载地址:https://jmeter.apache.org/ 会看到这里有两个版本,那么有什么区别么? Binaries是可执行版,直接下载解…

韩国量子之梦:将量子计算纳入新增长 4.0战略

内容来源:量子前哨(ID:Qforepost) 编辑丨王珩 编译/排版丨沛贤 深度好文:1500字丨9分钟阅读 据《朝鲜邮报》报道,韩国将推出由量子计算加速的云服务,并在首尔地区启动城市空中交通的试飞&…

企业过二级等保采购哪家堡垒机好?

企业常见过等保,一般是指等保二级或者三级。这不2024开年,不少企业在问,过二级等保采购哪家堡垒机好?电话多少?这里我们小编就给大家毛遂自荐一下吧! 企业过二级等保采购哪家堡垒机好? 【回答】…

Spring Boot Profiles简单介绍

Spring Boot application.properties和application.yml文件的配置 阅读本文之前,请先阅读上面的配置文件介绍。 Spring Boot Profiles是一个用于区分不同环境下配置的强大功能。以下是如何在Spring Boot应用程序中使用Profiles的详细步骤和代码示例。 1. 创…

一周学会Django5 Python Web开发-Django5命名空间namespace

锋哥原创的Python Web开发 Django5视频教程: 2024版 Django5 Python web开发 视频教程(无废话版) 玩命更新中~_哔哩哔哩_bilibili2024版 Django5 Python web开发 视频教程(无废话版) 玩命更新中~共计25条视频,包括:2024版 Django5 Python we…

2024年2月20日v1.0.5更新·优雅草便民工具youyacao-tools

2024年2月20日v1.0.5更新优雅草便民工具youyacao-tools apk下载 https://fenfacun.youyacao.com/tools105.apk 介绍 优雅草便民工具是一款由成都市一颗优雅草科技有限公司打造的便民查询公益工具,2024年1月17日正式发布v1.0.0版本,本工具为了方便大众免…

Linux-部署各类软件(黑马学习笔记)

MYSQL MYSQL5.7版本在CentOS系统安装 注意:安装操作需要root权限 MySQL的安装我们可以通过前面学习的yum命令进行。 安装 1.配置yum仓库 # 更新密钥 rpm --import https://repo.mysql.com/RPM-GPG-KEY-mysql-2022# 安装Mysql yum库 rpm -Uvh http://repo.mysql.…

运维管理制度优化:确保IT系统稳定运行的关键策略

1、总则 第一条:为保障公司信息系统软硬件设备的良好运行,使员工的运维工作制度化、流程化、规范化,特制订本制度。 第二条:运维工作总体目标:立足根本促发展,开拓运维新局面。在企业发展壮大时期&#x…

pytorch保存张量为图片

这里用到的是torchvision中的save_image。 废话不多说,直接来代码: import torch from torchvision.utils import save_image B, C, H, W 64, 3, 32, 32 input_tensor torch.randn(B, C, H, W) save_image(input_tensor, "hh.png", nrow8)…

力扣随笔删除有序数组中的重复项(简单26)

思路:根据类似于滑动窗口的思想,定义一个指针;使指针左边的区域全部为不重复元素(包括指针所指的数字) 以示例2为例,left:红色加粗 遍历指针i:黑色加粗 窗口范围,左边界到…

庖丁解牛-二叉树的遍历

庖丁解牛-二叉树的遍历 〇、前言 01 文章内容 一般提到二叉树的遍历,我们是在说 前序遍历、中序遍历、后序遍历和层序遍历 或者说三序遍历层序遍历,毕竟三序和层序的遍历逻辑相差比较大下面讨论三序遍历的递归方法、非递归方法和非递归迭代的统一方法然…

调度服务看门狗配置

查看当前服务器相关的sqlserver服务 在任务栏右键,选择点击启动任务管理器 依次点击,打开服务 找到sqlserver 相关的服务, 确认这些服务是启动状态 将相关服务在看门狗中进行配置 选择调度服务,双击打开 根据上面找的服务进行勾…

MTR(My Traceroute)网络链路路由测试工具

一、MTR的介绍 MTR是一款网络诊断工具,它将ping和traceroute的功能结合到一个程序中。这个工具可以提供关于网络链路的详细信息,显示数据包在网络上的传输路径,并提供有关每个节点的详细信息,如丢包率、延迟等。与传统的traceroute工具相比&a…

Python爬虫-爬取B站番剧封面

本文是本人最近学习Python爬虫所做的小练习。如有侵权,请联系删除。 页面获取url 代码 import requests import os import re# 创建文件夹 path os.getcwd() /images if not os.path.exists(path):os.mkdir(path)# 当前页数 page 1 # 总页数 total_page 2# 自动…

淘宝天猫商品详情API接口(商品详情页面数据,销量接口)

淘宝商品详情API接口,淘宝商品销量接口,淘宝商品价格接口,淘宝商品列表接口,淘宝商品数据列表接口,淘宝关键词搜索列表接口,淘宝APP详情接口,淘宝APP商品详情接口,淘宝H5详情接口&am…