一、设置PDF文档信息
PDF文档中可以包含一些与文档内容本身无关的信息,这部分信息可以包括文档的题目和作者名等一些额外的信息,便于对PDF文档进行其他处理。本节将介绍设置PDF文档信息的方法。
添加对iTextSharp的引用
using System;
using System.IO;
using iTextSharp.text;
using iTextSharp.text.pdf;
namespace SetPdfInfoDemo
{
class Program
{
static void Main(string[] args)
{
Console.WriteLine("设置信息");
//声明文档变量
Document document=new Document();
try
{
//创建文档
PdfWriter.GetInstance(document,new FileStream(@"c:\Info.pdf",FileMode.Create));
//添加文档信息
document.AddTitle("PDFInfo");
document.AddSubject("Demo of PDFInfo");
document.AddKeywords("Info,PDF,Demo");
document.AddCreator("SetPdfInfoDemo");
document.AddAuthor("Z");
document.Open();
//添加文档内容
document.Add(new Paragraph("PDF,PDF,PDF,PDF,PDF"));
document.Add(new Paragraph("PDF,PDF,PDF,PDF,PDF"));
document.Add(new Paragraph("PDF,PDF,PDF,PDF,PDF"));
document.Add(new Paragraph("PDF,PDF,PDF,PDF,PDF"));
document.Add(new Paragraph("PDF,PDF,PDF,PDF,PDF"));
}
catch(DocumentException de)
{
Console.Error.WriteLine(de.Message);
}
catch(IOException ioe)
{
Console.Error.WriteLine(ioe.Message);
}
//关闭文档
document.Close();
}
}
}
二、新建PDF文档页
与Office中的Word文档一样,一个PDF文档是由很多PDF页面构成的,可以在C#中很方便地对这些不同页面进行控制。本节将介绍新建PDF文档页面的内容。
添加对iTextSharp的引用
using System;
using System.IO;
using iTextSharp.text;
using iTextSharp.text.pdf;
namespace CreatePdfPageDemo
{
class Program
{
static void Main(string[] args)
{
Console.WriteLine("新建文档页面");
//声明文档变量
Document document=new Document();
try
{
//创建PDF文档
PdfWriter.GetInstance(document,new FileStream(@"C:\NewPage.pdf",FileMode.Create));
//在第一页添加页眉
HeaderFooter header=new HeaderFooter(new Phrase("PDF11111"),false);
document.Header=header;
//打开文档
document.Open();
//第二页是横向的A4
document.SetPageSize(PageSize.A4.Rotate());
//添加页脚
HeaderFooter footer=new HeaderFooter(new Phrase("PDF11111"),false);
document.Footer=footer;
//第一页内容
document.Add(new Paragraph("PDF1,PDF1,PDF1,PDF1,PDF1"));
document.Add(new Paragraph("PDF1,PDF1,PDF1,PDF1,PDF1"));
document.Add(new Paragraph("PDF1,PDF1,PDF1,PDF1,PDF1"));
document.Add(new Paragraph("PDF1,PDF1,PDF1,PDF1,PDF1"));
//新建一页
document.NewPage();
//第二页内容
//添加第二页内容
document.Add(new Paragraph("PDF2,PDF2,PDF2,PDF2,PDF2"));
document.Add(new Paragraph("PDF2,PDF2,PDF2,PDF2,PDF2"));
document.Add(new Paragraph("PDF2,PDF2,PDF2,PDF2,PDF2"));
document.Add(new Paragraph("PDF2,PDF2,PDF2,PDF2,PDF2"));
document.Add(new Paragraph("PDF2,PDF2,PDF2,PDF2,PDF2"));
//从下页开始取消页眉
document.ResetHeader();
//新建一页
document.NewPage();
//第三页内容
//添加第三页内容
document.Add(new Paragraph("PDF3,PDF3,PDF3,PDF3,PDF3"));
document.Add(new Paragraph("PDF3,PDF3,PDF3,PDF3,PDF3"));
document.Add(new Paragraph("PDF3,PDF3,PDF3,PDF3,PDF3"));
document.Add(new Paragraph("PDF3,PDF3,PDF3,PDF3,PDF3"));
document.Add(new Paragraph("PDF3,PDF3,PDF3,PDF3,PDF3"));
//重新开始页面计数
document.ResetPageCount();
//新建一页
document.NewPage();
//第四页内容
//添加第四页内容
document.Add(new Paragraph("PDF4,PDF4,PDF4,PDF4,PDF4"));
document.Add(new Paragraph("PDF4,PDF4,PDF4,PDF4,PDF4"));
document.Add(new Paragraph("PDF4,PDF4,PDF4,PDF4,PDF4"));
document.Add(new Paragraph("PDF4,PDF4,PDF4,PDF4,PDF4"));
document.Add(new Paragraph("PDF4,PDF4,PDF4,PDF4,PDF4"));
}
catch(DocumentException de)
{
Console.Error.WriteLine(de.Message);
}
catch(IOException ioe)
{
Console.Error.WriteLine(ioe.Message);
}
//关闭文档
document.Close();
}
}
}