Я использую свое заявление для заполнения и распечатки форм.
Когда форма распечатывается, весь текст, кроме имени клиента, растягивается черным ...
Я пыталсяраспечатать сохраненный PDF, и тот же результат происходит.
Когда я открываю заполненный PDF-файл и изменяю текст, файл распечатывается правильно.
Код, который я используюзаполнить PDF и распечатать его под ... Есть ли что-то, что я могу изменить в своем коде, чтобы этого не произошло?
Private Sub btnPrint_Click(sender As Object, e As EventArgs) Handles btnPrint.Click
Me.xmltopdf()
Me.Print()
End Sub
Private Sub xmltopdf()
Dim pdfTemp As String = My.Settings.SavePDFT ' ---> It's the original pdf form you want to fill
Dim newFile As String = My.Settings.SavePDFS & Me.TextBox1.Text & ".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("Field_1", TextBox1.Text)
pdfFormFields.SetField("Field_2", TextBox2.Text)
' There is more fields.. just removed them this.
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
' Print PDF
Private Sub Print()
' Wait a bit so the PDF file is created before printing.
Threading.Thread.Sleep(2500)
Dim psi As New ProcessStartInfo
psi.UseShellExecute = True
psi.Verb = "print"
psi.WindowStyle = ProcessWindowStyle.Hidden
'psi.Arguments = PrintDialog1.PrinterSettings.PrinterName.ToString()
psi.FileName = My.Settings.SavePDFS & Me.Ordre_NummerTextBox.Text & ".PDF" ' Here specify a document to be printed
Process.Start(psi)
End Sub
Это распечатанный PDF.