I have the following code using iTextSharp. It creates a barcode and inserts it into a PDF document created by iTextSharp
The code works correctly but only with newly created documents. I need to be able to do the same thing but with an already existing PDF. I have searched and found many examples but all assume a newly created document which doesn't help me.
Any assistance would be appreciated
Dim Batch As String = "12345" 'Define a new PDF Doc Dim doc As New Document(New iTextSharp.text.Rectangle(350, 400), 5, 5, 1, 1) ''the size of the rectangle width x height Try Dim writer As PdfWriter = PdfWriter.GetInstance(doc, New FileStream("C:\somepath\TestLabel.abc", FileMode.Create)) doc.Open() Dim dt As New DataTable() dt.Columns.Add("Batch") Dim row As DataRow = dt.NewRow() row("Batch") = Batch.ToString '& i.ToString() dt.Rows.Add(row) Dim img1 As System.Drawing.Image = Nothing For i As Integer = 0 To dt.Rows.Count - 1 If i <> 0 Then doc.NewPage() End If Dim cb As iTextSharp.text.pdf.PdfContentByte = writer.DirectContent Dim bc As iTextSharp.text.pdf.Barcode128 = New Barcode128() bc.TextAlignment = Element.ALIGN_LEFT bc.Code = dt.Rows(i)("Batch").ToString() bc.StartStopText = False bc.CodeType = iTextSharp.text.pdf.Barcode128.EAN13 bc.Extended = True Dim img As iTextSharp.text.Image = bc.CreateImageWithBarcode(cb, iTextSharp.text.Color.BLACK, iTextSharp.text.Color.BLACK) cb.SetTextMatrix(100.5F, 320.0F) img.ScaleToFit(240, 600) img.SetAbsolutePosition(5.5F, 320) cb.AddImage(img) Next i doc.Close() Catch ex As Exception doc.Close() MsgBox(ex.ToString) End Try