Muchas Gracias WWWmaster, con lo que me has dicho he podido hacer lo que necesitaba ahora bien...
tengo un problema y es la posición de la tabla, te adjunto mi código.
Código:
Dim DocumentoPDF As New Document
Dim ruta As String = "C:\Users\francisco.lara\Desktop\pdf\libro.pdf"
Dim fs As New FileStream(ruta, FileMode.Create, FileAccess.Write)
Dim pdfw As PdfWriter = PdfWriter.GetInstance(DocumentoPDF, fs)
Dim iEstado As Integer = 0, iColumna As Integer = 0
' Const INTERLINEADO As Single = 8
'Const MARGEN_INFERIOR As Single = 30
DocumentoPDF.Open()
DocumentoPDF.NewPage()
' cb.BeginText()
Dim imagen As iTextSharp.text.Image 'declaración de imagen
imagen = iTextSharp.text.Image.GetInstance(My.Application.Info.DirectoryPath & "\Logo Segeplan a color.jpg") 'nombre y ruta de la imagen a insertar
imagen.ScalePercent(16.7) 'escala al tamaño de la imagen
imagen.SetAbsolutePosition(40, 760) 'posición en la que se inserta. 40 (de izquierda a derecha). 500 (de abajo hacia arriba)
DocumentoPDF.Add(imagen) 'se agrega la imagen al documento
Dim arreglo(35)
Dim arreglo2(35)
Dim arreglo3(35)
Dim arreglo4(35)
Dim y As Integer = 720
Dim pdfTablaCadenaSello As New PdfPTable(4)
Dim arrAnchosColumna As Single() = {300.0F, 68.0F, 68.0F, 68.0F}
pdfTablaCadenaSello.SetTotalWidth(arrAnchosColumna)
pdfTablaCadenaSello.SpacingBefore = 15.0F 'Give some space after the text or it may overlap the table
pdfTablaCadenaSello.DefaultCell.Border = 0
Dim i, a, C, D As Integer
Dim consulta = (From dt In db.criteriosResps Order By dt.idcriterio Where dt.idsnip = txtsnip.Text Select dt.RSi).ToList
Dim consulta2 = (From da In db.criterios Select da.Nombre).ToList
Dim consulta3 = (From da In db.criteriosResps Order By da.idcriterio Where da.idsnip = txtsnip.Text Select da.RNo).ToList
Dim consulta4 = (From da In db.criteriosResps Order By da.idcriterio Where da.idsnip = txtsnip.Text Select da.Observacion).ToList
Dim font12Bold As New iTextSharp.text.Font(iTextSharp.text.Font.FontFamily.COURIER, 8.0F, iTextSharp.text.Font.NORMAL, BaseColor.BLACK)
For Each cri In consulta2
arreglo(i) = cri
i = i + 1
Next
For Each l In consulta
If l = False Then
y = y - 15
arreglo2(a) = "NO"
a = a + 1
Else
y = y - 15
arreglo2(a) = "SI"
a = a + 1
End If
Next
For Each l In consulta3
If l = False Then
y = y - 15
arreglo3(C) = "NO"
C = C + 1
Else
y = y - 15
arreglo3(C) = "SI"
C = C + 1
End If
Next
For Each l In consulta4
y = y - 15
arreglo4(D) = l
D = D + 1
Next
Dim cell = New PdfPCell(New Phrase("Test"))
cell.Border = 0
For b As Integer = 0 To 34
cell.Border = 0
pdfTablaCadenaSello.DefaultCell.Border = 0
cell = New PdfPCell(New Phrase(arreglo(b), font12Bold))
cell.Border = 0
pdfTablaCadenaSello.AddCell(cell)
cell = New PdfPCell(New Phrase(arreglo2(b), font12Bold))
cell.Border = 0
pdfTablaCadenaSello.AddCell(cell)
cell = New PdfPCell(New Phrase(arreglo3(b), font12Bold))
cell.Border = 0
pdfTablaCadenaSello.AddCell(cell)
cell = New PdfPCell(New Phrase(arreglo4(b), font12Bold))
cell.Border = 0
pdfTablaCadenaSello.AddCell(cell)
Next
DocumentoPDF.Add(pdfTablaCadenaSello)
' Close the objects
DocumentoPDF.Close()
fs.Close()
If System.IO.File.Exists(ruta) Then
If MsgBox("Texto convertido a fichero PDF correctamente " + _
"¿desea abrir el fichero PDF resultante?",
MsgBoxStyle.Question + MsgBoxStyle.YesNo) = MsgBoxResult.Yes Then
'Abrimos el fichero PDF con la aplicación asociada
System.Diagnostics.Process.Start(ruta)
End If
Else
MsgBox("El fichero PDF no se ha generado, " + _
"compruebe que tiene permisos en la carpeta de destino.",
MsgBoxStyle.Exclamation + MsgBoxStyle.OkOnly)
End If
El problema esque me sale esto:
http://prntscr.com/674ooi
Quiero posicionar obviamente la tabla debajo de la Imagen, si es posible hacerlo, te agradesco me des una orientación.