我已经在网上搜索,但没有找到解决方案。
我有一个VB.net表单,其中包含客户数据集,我想在textbox.text中获取联系信息,并填写PDF表单,然后打印。
在每个创建pdf的地方都提到了itextsharp,而不是填写和打印pdf,我发现了一个很有前途的代码,我对vb.net并不十分熟悉,这是我的第一个程序。
这是我认为可以工作的代码...
Imports System
Imports System.IO
Imports System.Xml
Imports iTextSharp
Imports iTextSharp.text
Imports iTextSharp.text.pdf
Imports iTextSharp.text.xml
Imports System.Security
Private Sub xmltopdf()
Dim pdfTemp As String = "C:\ExampleTemplate.pdf" ' ---> It's the original pdf form you want to fill
Dim newFile As String = "C:\NewFile.Pdf" ' ---> It will generate new pdf that you have filled from your program
' ------ READING -------
Dim pdfReader As New PdfReader(pdfTemp)
' ------ WRITING -------
' If you don’t specify version and append flag (last 2 params) in below line then you may receive “Extended Features” error when you open generated PDF
Dim pdfStamper As New PdfStamper(pdfReader, New FileStream(newFile, FileMode.Create), "\6c", True)
Dim pdfFormFields As AcroFields = pdfStamper.AcroFields
' ------ SET YOUR FORM FIELDS ------
pdfFormFields.SetField("Company", "Parth Dave & Co.")
pdfFormFields.SetField("SalesOrder", "1234456")
pdfFormFields.SetField("InstallAddress", "Lorimer Street")
pdfFormFields.SetField("Suburb", "Port Melbourne")
pdfFormFields.SetField("Post_Code", "3207")
pdfFormFields.SetField("ClientContact", "Parth")
pdfFormFields.SetField("ClientPhone", "0402020202")
pdfStamper.FormFlattening = False
' close the pdf
pdfStamper.Close()
' pdfReader.close() ---> DON"T EVER CLOSE READER IF YOU'RE GENERATING LOTS OF PDF FILES IN LOOP
End Sub
我在导入时出错,不知道导入是什么。
我已经添加了itextsharp.dll,所以应该可以。
如果有人可以帮助我或向正确的方向发送邮件,将不胜感激。
答案 0 :(得分:0)
将Imports放在类之外。