生成PDF文档我们通常可以通过文档转换的形式来得到想要的PDF,但我们也可以通过最直接的方式来创建PDF文档,由此本篇文章将介绍C#如何来创建带图、文元素的PDF文档。同理,对于需要读取PDF文档的情况,我们也可以分情况来读取想要的文档元素(文本、图片)。在下面的示例中将做详细介绍。
示例要点梳理:
一、创建PDF文档(可支持中文)
1.写入文本(包括页边距、字体、字号等设置)
2.绘入图片
二、读取PDF文档
1.读取文本
1.1读取全部文本
1.2读取指定区域文本
2.读取图片
使用工具:Free Spire.PDF for .NET4.3 (最新免费版)
注:在编辑代码前引用Spire.PDF.dll,dll文件可在安装路径下的Bin文件夹中获取。
一、创建PDF文档
C#
using Spire.Pdf;
using Spire.Pdf.Graphics;
using System.Drawing;
namespace CreatePDF_PDF
{
class Program
{
static void Main(string[] args)
{
//初始化一个PdfDocument类实例
PdfDocument document = new PdfDocument();
//声明 PdfUnitConvertor和PdfMargins类对象
PdfUnitConvertor unitCvtr = new PdfUnitConvertor();
PdfMargins margins = new PdfMargins();
//设置页边距
margins.Top = unitCvtr.ConvertUnits(2.54f, PdfGraphicsUnit.Centimeter, PdfGraphicsUnit.Point);
margins.Bottom = margins.Top;
margins.Left = unitCvtr.ConvertUnits(3.17f, PdfGraphicsUnit.Centimeter, PdfGraphicsUnit.Point);
margins.Right = margins.Left;
//新添加一个A4大小的页面
PdfPageBase page = document.Pages.Add(PdfPageSize.A4, margins);
//自定义PdfTrueTypeFont、PdfPen实例,设置字体类型、字号和字体颜色
PdfTrueTypeFont font = new PdfTrueTypeFont(new Font("楷体", 11f),true);
PdfPen pen = new PdfPen(Color.Black);
//调用DrawString()方法在指定位置写入文本
string text = ("《蝶恋花 送春》 \n 楼外垂杨千万缕,欲系青春,少住春还去。犹自风前飘柳絮,随春且看归何处?\n 绿满山川闻杜宇,便作无情,莫也愁人苦。把酒送春春不语,黄昏却下潇潇雨。");
page.Canvas.DrawString(text, font, pen, 15, 13);
//加载图片,并调用DrawImage()方法在指定位置绘入图片
PdfImage image = PdfImage.FromFile("image1.jpg");
float width = image.Width * 0.55f;
float height = image