Foro de elhacker.net

Programación => .NET (C#, VB.NET, ASP) => Mensaje iniciado por: PETTETE en 28 Junio 2017, 20:48 pm



Título: Tabla en Pdf
Publicado por: PETTETE en 28 Junio 2017, 20:48 pm
Hola buenas,
os comento el problemilla que me ha surgido.

he creado una tabla en un pdf desde visual basic pero no se como hacer estas 2 cosas:
1- darle un tamaño especifico a las celdas
2- mover a la tabla a una ubicación especifica y que no salga centrada en el pdf....

¿podría ayudarme alguien?
estaría muy agradecido.

Un saludo de vuestro amigo y vecino,
PETETE;)


Título: Re: Tabla en Pdf
Publicado por: Eleкtro en 29 Junio 2017, 12:46 pm
¿podría ayudarme alguien?

Tus dos últimas dudas tratan sobre creación de archivos de Excel y archivos PDF, pues dudo mucho que alguien pueda ayudarte si en ninguna de tus dudas mencionas que librería de terceros o clases de .NET Framework estás utilizando para ese tipo de tareas... y tampoco enseñas el código.

En el foro no hay adivinos.

Saludos!


Título: Re: Tabla en Pdf
Publicado por: PETTETE en 29 Junio 2017, 14:20 pm
Cierto es... mea culpa.

Utilizo la libreria itextsharp.

mi codigo es l siguiente.

 
Código
  1. Imports iTextSharp.text ' ES OBLIGATORIO IMPORTAR ESTA CLASE PARA QUE EL VISUAL BASIC ENTIENDA EL IDIOMA UTILIZADO
  2. Imports iTextSharp.text.pdf
  3.  
  4. Module Module1
  5.  
  6.    Sub Main()
  7.  
  8.        ' CREAR PDF Y ESCRIBIR
  9.  
  10.        Dim documentoPDF As New Document(PageSize.A4, 100, 100, 220, 150) ' SE LE PONE LAS CARACTERISTICAS DEL DOCUMENTO PDF (TAMAÑO ETC.)
  11.        iTextSharp.text.pdf.PdfWriter.GetInstance(documentoPDF, New System.IO.FileStream("plantilla.PDF", System.IO.FileMode.Create))
  12.        documentoPDF.Open()
  13.  
  14.  
  15.        'AÑADIR TABLA
  16.  
  17.        Dim tabla
  18.        Dim celda
  19.        Dim celda1
  20.        Dim celda2
  21.        Dim celda3
  22.        Dim celda4
  23.        Dim celda5
  24.  
  25.  
  26.  
  27.        tabla = New pdf.PdfPTable(6) 'EL 4 ES EL NUMERO DE COLUMNAS
  28.  
  29.  
  30.        celda = New pdf.PdfPCell(New Phrase("")) 'TITULO DE LA TABLA
  31.        celda1 = New pdf.PdfPCell(New Phrase("CÓDIGO CLIENTE"))
  32.  
  33.        celda2 = New pdf.PdfPCell(New Phrase("SU PEDIDO Nº"))
  34.        celda3 = New pdf.PdfPCell(New Phrase("REFERENCIA PROVEEDOR"))
  35.        celda4 = New pdf.PdfPCell(New Phrase("FECHA"))
  36.        celda5 = New pdf.PdfPCell(New Phrase("FACTURA Nº"))
  37.  
  38.  
  39.        'celda.colspan = 1 ' CELDAS QUE OCUPA EL TITULO DE TABLA  |||  SI LLEGA A SER 3, COMO LA TABLA TIENE 4 COLUMNAS, 1 DE LAS CELDAS SUBIRIA Y SE COLOCARIA JUNTA A LA DEL TITULO
  40.        ' celda.horizontalAlignment = 1 ' UBICACIÓN DEL TITULO DE LA TABLA: 0=IZQUIERDA 1=CENTRADO 2=DERECHA
  41.  
  42.  
  43.        'celda.padding = 0.5 ' ALTURA DE LA CELDA DE TITULO
  44.        celda.HorizontalAlignment = iTextSharp.text.Element.ALIGN_CENTER
  45.        celda.VerticalAlignment = iTextSharp.text.Element.ALIGN_TOP
  46.  
  47.        celda1.HorizontalAlignment = iTextSharp.text.Element.ALIGN_CENTER
  48.        celda1.VerticalAlignment = iTextSharp.text.Element.ALIGN_TOP
  49.        celda2.HorizontalAlignment = iTextSharp.text.Element.ALIGN_CENTER
  50.        celda2.VerticalAlignment = iTextSharp.text.Element.ALIGN_TOP
  51.        celda3.HorizontalAlignment = iTextSharp.text.Element.ALIGN_CENTER
  52.        celda3.VerticalAlignment = iTextSharp.text.Element.ALIGN_TOP
  53.        celda4.HorizontalAlignment = iTextSharp.text.Element.ALIGN_CENTER
  54.        celda4.VerticalAlignment = iTextSharp.text.Element.ALIGN_TOP
  55.        celda5.HorizontalAlignment = iTextSharp.text.Element.ALIGN_CENTER
  56.        celda5.VerticalAlignment = iTextSharp.text.Element.ALIGN_TOP
  57.  
  58.        celda.backgroundcolor = pdf.ExtendedColor.LIGHT_GRAY ' COLOR DE RELLENO DE LA CELDA DE TITULO
  59.        celda1.backgroundcolor = pdf.ExtendedColor.LIGHT_GRAY
  60.        celda2.backgroundcolor = pdf.ExtendedColor.LIGHT_GRAY
  61.        celda3.backgroundcolor = pdf.ExtendedColor.LIGHT_GRAY
  62.        celda4.backgroundcolor = pdf.ExtendedColor.LIGHT_GRAY
  63.        celda5.backgroundcolor = pdf.ExtendedColor.LIGHT_GRAY
  64.  
  65.  
  66.        tabla.addcell(celda)
  67.        tabla.addcell(celda1)
  68.        tabla.addcell(celda2)
  69.        tabla.addcell(celda3)
  70.        tabla.addcell(celda4)
  71.        tabla.addcell(celda5)
  72.  
  73.  
  74.        tabla.addcell(" 1 ")   'SE AÑADE LA CELDA 1
  75.        tabla.addcell(" 2 ")
  76.        tabla.addcell(" 3 ")
  77.        tabla.addcell(" 4 ")
  78.        tabla.addcell(" 5 ")
  79.        tabla.addcell(" 6 ")
  80.  
  81.  
  82.        ' TOTAL DE CELDAS: 12
  83.  
  84.  
  85.        documentoPDF.Add(tabla)
  86.  
  87.        documentoPDF.Close()
  88.        Process.Start("plantilla.PDF")
  89.  
  90.  
  91.  
  92.    End Sub
  93.  
  94. End Module
  95.  
  96.  
  97.  


Quiero crear 3 tablas pero de momento con una me vale.. jajaja

Lo que pretendo es que la tabla que se genere tenga 6 columnas y 2 filas. y que la celdas de la fila 1 tenga un tamaño X. A parte de eso quiero mover la tabla a la parte superior izquierda.


pd, Muchas gracias por contestar siempre, siemrpe que posteo algo contestas y eso se agradece =)


Un saludo,
PETETE;)


Título: Re: Tabla en Pdf
Publicado por: Eleкtro en 29 Junio 2017, 16:32 pm
Lo que pretendo es que la tabla que se genere tenga 6 columnas y 2 filas. y que la celdas de la fila 1 tenga un tamaño X.

La próxima vez deberías usar Google para preguntarle algo tan básico como redimensionar el tamaño de una celda/columna...
  • How to define the width of a cell? | itextpdf.com (http://developers.itextpdf.com/question/how-define-width-cell)

Y también estudiar la referencia oficial de esa librería...
  • iText v5 API Reference | itextpdf.com (http://itextsupport.com/apidocs/itext5/latest/allclasses-noframe.html)
  • iText v7 API Reference | itextpdf.com (http://itextsupport.com/apidocs/itext7/7.0.0/allclasses-noframe.html)

...O los ejemplos que proveen para iniciados:
  • iText Examples | itextpdf.com (http://developers.itextpdf.com/examples)

Saludos