- nuget引用Itextsharp
- 修改PDF
public static void ChangePDF(string PathFile)
{
PdfReader reader = new PdfReader(PathFile);
PdfStamper pdfStamper = new PdfStamper(reader, new FileStream(pathResorce + ".pdf", FileMode.Append, FileAccess.Write, FileShare.None));
BaseFont baseFont = BaseFont.CreateFont("C:\\Windows\\Fonts\\simhei.ttf", BaseFont.IDENTITY_H, BaseFont.NOT_EMBEDDED);
iTextSharp.text.Font font = new iTextSharp.text.Font(baseFont, 8);
Phrase p1 = new Phrase("Test", font);
PdfContentByte over = pdfStamper.GetOverContent(1);
ColumnText.ShowTextAligned(over, Element.ALIGN_CENTER, p1, 213, 730, 0);
pdfStamper.Close();
}
- 将几个PDF合并在一张PDF
public static void merge(List<string> pathFile, string FileName)
{
List<PdfReader> readerList = new List<PdfReader>();
PdfReader reader;
Document newDocument = new Document();
PdfWriter pdfWriter = PdfWriter.GetInstance(newDocument, new FileStream(FileName + ".pdf", FileMode.Create));
newDocument.Open();
PdfContentByte cb = pdfWriter.DirectContent;
PdfImportedPage newPage;
for (int i = 0; i < pathFile.Count; i++)
{
reader = new PdfReader(pathFile[i]);
int iPageNum = reader.NumberOfPages;
for (int j = 1; j <= iPageNum; j++)
{
newDocument.NewPage();
newPage = pdfWriter.GetImportedPage(reader, j);
cb.AddTemplate(newPage, 0, 0);
}
readerList.Add(reader);
}
newDocument.Close();
foreach (var rd in readerList)
{
rd.Dispose();
}
}