1.基础知识
1.1 Chunk(块)
Chunk是添加到Document 对象的用于表示文本的最小对象。Chunk对象包含一个StringBuffer用于存放文本,文本中的字符是相同的字体格式(样式、大小、颜色),这些格式在Font对象中设置。Chunk还可通过成员函数更改其他属性,比如背景色、上(下)标、下划线、删除线等。
作者在第二版《iText in Action》中所用的例子基于一个数据库,为了降低复杂性,本人在学习过程中并未使用该数据库,而是使用一些简单的操作来实践iText的功能。
下面是使用Chunk的一个例子:
Document doc = new Document(PageSize.B5)
PdfWriter writer = PdfWriter.GetInstance(doc, new FileStream("F:\\test.pdf", FileMode.Create))
writer.InitialLeading = 30
doc.Open()
doc.Add(new Chunk("China"))
doc.Add(Chunk.NEWLINE)
Font font = new Font(Font.FontFamily.COURIER, 12, Font.BOLD, BaseColor.WHITE)
Chunk content = new Chunk(" BeiJing", font)
content.SetBackground(BaseColor.BLACK</
Chunk(块)Chunk是添加到Document对象的用于表示文本的最小对象。Chunk对象包含一个StringBuffer用于存放文本,文本中的字符是相同的字体格式(样式、大小、颜色),这些格式在Font对象中设置。Chunk还可通过成员函数更改其他属性,比如背景色、上(下)标、下划线、删除线等。作者在第二版《iText in Action》中所用的例子基于一个数据库,为了降低复杂性,本人在学...
以上就是演示的内容,本文仅仅简单介绍了
iTextSharp
.LGPLv2.Core 的使用,而
iTextSharp
.LGPLv2.Core 提供了大量的方法用于渲染
PDF
,朋友们可以自行研究。
通过NPOI将数据导出为
Excel
表格,添加新功能导出
PDF
,我已知的NPOI并没有直接导出为
PDF
的方法,如果有请告诉我,谢谢。
网上查询了将
Excel
转为
PDF
导出的方法,有的需要office组件,有的是Spire.XLS,这两个我都没接触过,为了避免坑多,我放弃了使用这两种方法导出
PDF
(其实就是我不会,没别的可说),之后我找到了不需要这个两种方法的另一种方式,引用
iTextSharp
,来导出
PDF
。
文章是这一篇:https://blog.csdn.net/weixin_43663915/ar.
其实有很多的组套软件提供
Excel
转
PDF
,而且也包含更多更强大的关于
文件
格式转化和操作的API,像是ITextshape,但全都是商业付费的。上午只找到两种可以使用的方法,暂时先记录一下。
iTextSharp
是一个强大且易于使用的开源库,它提供了
创建
和操作
PDF
文件
的功能。本篇文章将向您展示如何使用
iTextSharp
库来
创建
PDF
表格,并提供相应的代码示例。这是一个简单的示例,希望对您有所帮助。如果您需要更详细的操作和功能,请参考
iTextSharp
的官方文档或其他相关资源。完成上述步骤后,运行程序即可
生成
名为"StudentInfo.
pdf
"的
PDF
文件
,其中包含了我们
创建
的学生信息表格。接下来,我们将演示一个简单的示例,该示例
创建
一个包含学生信息的表格,并将其导出为
PDF
文件
。
示例代码定义了一个名为
Pdf
Controller的API控制器,其中的Generate
Pdf
方法
创建
了一个新的
PDF
文档,并将内容添加到文档中。最后,将文档内容转换为字节数组,并通过File方法返回给前端。注意,你需要在你的项目中添加对
iTextSharp
库的引用。当调用/api/
pdf
接口时,将返回一个带有
生成
的
PDF
文件
的响应。你可以将其用于前端下载或进一步处理。
提到打印,恐怕对于很多人都不会陌生,无论是开发者,还是非计算机专业的人员都会接触到打印。对于项目开发中使用到打印的地方会非常多,在.NET项目中,选择打印的方式比较多,例如原始的IE网页打印、水晶报表、JS插件实现打印、导出文档打印,以及今天提到的使用
itextSharp
组件实现
PDF
打印等等。在.NET中实现
PDF
打印的组件比较多,例如
PDF
sharp、Report.NET、sharp
PDF
、...
c)通过解析器的模板方法ProcessContent指定页码和相应 的读取方法
生成
读取策略(下图中的i为页码,第二个参数为读取方法类,前面尖括号内为该模板方法的类型指定,对于文本读取应为如下图所示的类型);2、使用Document对象和
文件
流(指定
文件
流模式和分割后的
文件
存储的路径)
生成
Pdf
Copy类的对象(该对象将Document对象与输出
文件
流关联);6、将提取出的
Pdf
ImportPage类对象(一页
PDF
)通过
Pdf
Copy对象的AddPage方法添加至相关联原Document中;
记得上回有写到用
C#
操作
Excel
(.net 4.0)
很多朋友说推荐用NPOI,的确,用微软自带的操作execl会有很大的问题。客户的主机不愿意安装
excel
,
这时我才意识到用自带组件完全是不行的,我本来准备改用NPOI组件,但是这时客户提出为了安全(数据安全),改用后台产
PDF
。
这就有了本文中
ITextSharp
的用法
本文介绍了基本全套的用法,包括页眉,页首,表格的用法,但是还...
这里貌似还有存在一个问题,就是
创建
pdf
表格的使用的是
excel
每一列的宽度比例,并无法完美做到将
excel
每个单元格的数据的长度做到适应,思来想去没有想到什么好的方法。
目前通过
c#
实现
excel
转
pdf
无非是用通过office组件或者Spire.XLS,其中office组件需要单独下载安装,而Spire.XLS并非开源转换效率也算很高,基于以上原因本文基于轻量级方法高效实现
excel
转
pdf
。
本文实现
excel
转
pdf
文件
引用了NPOI类库来读取
excel
文件
数据,用
itextsharp
类库来实现动态
生成
pdf
文档,话不多说直接贴代码,如下是转换的核心代...