参考代码
Dim waterMarkName As String = "aaaaaabbbbcccc" & chr(13) & "123456" & chr(13) & "11111"
Dim reader As New iTextSharp.text.pdf.PdfReader("d:\test.pdf")
Dim msWater As new io.FileStream("d:\123.pdf", io.FileMode.Create)
Dim total As Integer = reader.NumberOfPages
Dim pdfStamper As new iTextSharp.text.pdf.PdfStamper(Reader, msWater)
Dim psize = Reader.GetPageSize(1)
Dim width = psize.Width
Dim height = psize.Height
Dim gs As new iTextSharp.text.pdf.PdfGState
Dim basefont As iTextSharp.text.pdf.BaseFont = iTextSharp.text.pdf.BaseFont.CreateFont("C:\WINDOWS\Fonts\SIMYOU.TTF", iTextSharp.text.pdf.BaseFont.IDENTITY_H, iTextSharp.text.pdf.BaseFont.NOT_EMBEDDED)
For i As Integer = 1 To total
Dim waterContent = pdfStamper.GetOverContent(i) 'GetUnderContent(i)
waterContent.SetGState(gs)
waterContent.BeginText()
waterContent.SetColorFill( iTextSharp.text.BaseColor.RED)
waterContent.SetFontAndSize(basefont, 18)
waterContent.SetTextMatrix(0, 0)
Dim ary = waterMarkName.split(chr(13))
For j As Integer = 0 To ary.length-1
Dim s As String = ary(j)
s = s.PadRight(20)
waterContent.ShowTextAligned(iTextSharp.text.Element.ALIGN_left, s, (width-50)/2+j*20, height / 2-30*j, 45)
Next
waterContent.EndText()
Next
pdfStamper.close
reader.Close()