我在vb.net有个代号是这样的:
Public Shared f_cb As BaseFont = BaseFont.CreateFont(Directory.GetCurrentDirectory() + "\plantillas\fonts\trebucbd.ttf", BaseFont.CP1252, BaseFont.NOT_EMBEDDED)
Public Shared f_cn As BaseFont = BaseFont.CreateFont(Directory.GetCurrentDirectory() + "\plantillas\fonts\trebuc.ttf", BaseFont.CP1252, BaseFont.NOT_EMBEDDED)
Public Shared Sub GenPDF()
Try
Using fs As System.IO.FileStream = New FileStream(Directory.GetCurrentDirectory() + "\te\TEST.pdf", FileMode.Create)
Dim document As New Document(PageSize.A4, 25, 25, 30, 1)
Dim writer As PdfWriter = PdfWriter.GetInstance(document, fs)
document.AddTitle("test")
document.Open()
Dim cb As PdfContentByte = writer.DirectContent
Dim png As iTextSharp.text.Image = iTextSharp.text.Image.GetInstance(Current.Server.MapPath("Images/logo.jpg"))
png.ScaleAbsolute(75, 52)
png.SetAbsolutePosition(40, 770)
cb.AddImage(png)
cb.BeginText()
Dim left_margin As Integer = 40
Dim top_margin As Integer = 750
write(cb, "Streets S.R.L.", left_margin, top_margin, f_cb, 10)
write(cb, "Av. 900, C.A.B.A. (1001), Peru", left_margin, top_margin - 12, f_cn, 8)
write(cb, "Tel: 4300-2147 - Fax: 4300-2148", left_margin, top_margin - 24, f_cn, 8)
write(cb, "C.U.I.T. 20-30602227-0", left_margin, top_margin - 36, f_cn, 10)
write(cb, "I.V.A.", left_margin, top_margin - 48, f_cn, 10)
cb.EndText()
document.Close()
writer.Close()
fs.Close()
End Using
Catch ex As Exception
Throw ex
End Try
End Sub
Public Shared Sub write(ByVal cb As PdfContentByte, ByVal Text As String, ByVal X As Integer, ByVal Y As Integer, ByVal font As BaseFont, ByVal Size As Integer)
cb.SetFontAndSize(font, Size)
cb.ShowTextAligned(PdfContentByte.ALIGN_LEFT, Text, X, Y, 0)
End Sub
所以它工作得很好,现在我想写到一个已经创建的vb.net,但我不能找到模拟的pdfStamper我正在尝试,但没有成功,如何的代码来追加数据到pdf使用vb.net中的它的文本夏普是什么样子?
发布于 2013-09-06 10:35:17
以下是将文本写入现有PDF文件,然后使用新名称保存该文件的示例:
Dim oldFile As String = "SomePath/Existing.pdf"
Dim newFile As String = "SomePath/New.pdf"
' Create reader
Dim reader As New PdfReader(oldFile)
Dim size As Rectangle = reader.GetPageSizeWithRotation(1)
Dim document As New Document(size)
' Create the writer
Dim fs As New FileStream(newFile, FileMode.Create, FileAccess.Write)
Dim writer As PdfWriter = PdfWriter.GetInstance(document, fs)
document.Open()
Dim cb As PdfContentByte = writer.DirectContent
' Set the font, color and size properties for writing text to the PDF
Dim bf As BaseFont = BaseFont.CreateFont(BaseFont.HELVETICA, BaseFont.CP1252, BaseFont.NOT_EMBEDDED)
cb.SetColorFill(BaseColor.DARK_GRAY)
cb.SetFontAndSize(bf, 8)
' Write text in the PDF
cb.BeginText()
Dim text As String = "Some text here"
' Set the alignment and coordinates here
cb.ShowTextAligned(1, text, 520, 640, 0)
cb.EndText()
' Put the text on a new page in the PDF
Dim page As PdfImportedPage = writer.GetImportedPage(reader, 1)
cb.AddTemplate(page, 0, 0)
' Close the objects
document.Close()
fs.Close()
writer.Close()
reader.Close()
https://stackoverflow.com/questions/18648888
复制相似问题