elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Security Series.XSS. [Cross Site Scripting]


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  .NET (C#, VB.NET, ASP) (Moderador: kub0x)
| | | |-+  Ayuda con tipo de letra al exportar un datagrid a pdf
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Ayuda con tipo de letra al exportar un datagrid a pdf  (Leído 7,791 veces)
joalbela

Desconectado Desconectado

Mensajes: 30



Ver Perfil
Ayuda con tipo de letra al exportar un datagrid a pdf
« en: 8 Marzo 2011, 21:46 pm »

Hola amigos, tengo un problema lo que pasa es que genere un datagrid y luego lo exporte a pdf y me gustaria poder cambiarle el estilo de la  letra por una curier new ya que no he podido hacerlo.

Muchas gracias


En línea

Jorge MB
Shell Root
Moderador Global
***
Desconectado Desconectado

Mensajes: 3.723


<3


Ver Perfil WWW
Re: Ayuda con tipo de letra al exportar un datagrid a pdf
« Respuesta #1 en: 8 Marzo 2011, 21:50 pm »

Y como hicisteis para exportarlo? Alguna librería u objeto?


En línea

Por eso no duermo, por si tras mi ventana hay un cuervo. Cuelgo de hilos sueltos sabiendo que hay veneno en el aire.
joalbela

Desconectado Desconectado

Mensajes: 30



Ver Perfil
Re: Ayuda con tipo de letra al exportar un datagrid a pdf
« Respuesta #2 en: 8 Marzo 2011, 22:25 pm »

Código
  1. private void btnExportar_Click(object sender, EventArgs e)
  2.        {
  3.  
  4.  
  5.            DateTime hora = DateTime.Now;
  6.            string fcha_ttal = Convert.ToDateTime(hora).Day + "/" + Convert.ToDateTime(hora).Month + "/" + Convert.ToDateTime(hora).Year;
  7.            Document doc = new Document(PageSize.A3, 9, 9, 10, 10);
  8.            string filename = "C:\\Temp\\Listado Total.pdf";
  9.            iTextSharp.text.Image jpg = iTextSharp.text.Image.GetInstance(@"C:\Mis documentos\Biblia_productos\Biblia_productos\Images\marion.JPG"); jpg.Alignment = iTextSharp.text.Image.ALIGN_LEFT ;
  10.            Chunk tamaño = new Chunk(" LISTA DE PRODUCTOS CODIFICADOS EN " + fcha_ttal + "", FontFactory.GetFont("COURIER", 12));
  11.  
  12.            try
  13.            {
  14.                FileStream file = new FileStream
  15.               (filename, FileMode.OpenOrCreate, FileAccess.ReadWrite, FileShare.ReadWrite);
  16.                PdfWriter.GetInstance(doc, file);
  17.                doc.Open();
  18.                doc.Add(new Paragraph(tamaño));
  19.                doc.Add(jpg);
  20.                GenerarDocumento(doc);
  21.                Process.Start(filename);
  22.            }
  23.            catch (Exception ex)
  24.            {
  25.                MessageBox.Show(ex.Message);
  26.            }
  27.            doc.Close();
  28.        }
  29.        //Función que genera el documento Pdf
  30.        public void GenerarDocumento(Document document)
  31.        {
  32.            PdfPTable datatable = new PdfPTable(dataGridView1.ColumnCount);
  33.            datatable.DefaultCell.Padding = 1;
  34.            float[] headerwidths = GetTamañoColumnas(dataGridView1);
  35.            datatable.SetWidths(headerwidths);
  36.            datatable.WidthPercentage = 100;
  37.            datatable.DefaultCell.BorderWidth = 3;
  38.            datatable.DefaultCell.HorizontalAlignment = Element.ALIGN_LEFT;
  39.            for (int i = 0; i < dataGridView1.ColumnCount; i++)
  40.            {
  41.                datatable.AddCell(dataGridView1.Columns[i].HeaderText);
  42.  
  43.            }
  44.            datatable.HeaderRows = 0;
  45.            datatable.DefaultCell.BorderWidth = 1;
  46.  
  47.            for (int i = 0; i < dataGridView1.RowCount - 1; i++)
  48.            {
  49.                for (int j = 0; j < dataGridView1.ColumnCount; j++)
  50.                {
  51.                    datatable.AddCell(dataGridView1[j, i].Value.ToString());
  52.                    //string nmbre_prdcto = datatable.AddCell(dataGridView1[j, i].Value.ToString());
  53.                    //string primera = nmbre_prdcto.Substring(1, 1);
  54.                }
  55.                datatable.CompleteRow();
  56.            }
  57.            document.Add(datatable);
  58.        }
  59.        public float[] GetTamañoColumnas(DataGridView dg)
  60.        {
  61.            float[] values = new float[dg.ColumnCount];
  62.            for (int i = 0; i < dg.ColumnCount; i++)
  63.            {
  64.                values[i] = (float)dg.Columns[i].Width;
  65.            }
  66.            return values;
  67.        }


ESTE FUE EL CODIGO CON EL QUE EXPORTE EL DATAGRID AL PDF
« Última modificación: 9 Marzo 2011, 14:48 pm por Novlucker » En línea

Jorge MB
seba123neo


Desconectado Desconectado

Mensajes: 3.621



Ver Perfil WWW
Re: Ayuda con tipo de letra al exportar un datagrid a pdf
« Respuesta #3 en: 8 Marzo 2011, 22:48 pm »

trata de poner el codigo fuente entre el geshi asi es mas claro de leer.

no pusiste que libreria estas usando, porque cuando haces un "new Document" o "new PdfPTable" esos metodos forman parte de una libreria externa al visual studio que debes estar usando.

por lo que me acabo de fijar la libreria se llama iTextSharp

busca en internet que hay mucho de esta libreria, fijate esto:

iTextSharp - Working with Fonts

saludos.



« Última modificación: 8 Marzo 2011, 22:50 pm por seba123neo » En línea

joalbela

Desconectado Desconectado

Mensajes: 30



Ver Perfil
Re: Ayuda con tipo de letra al exportar un datagrid a pdf
« Respuesta #4 en: 8 Marzo 2011, 23:02 pm »

 
Código
  1. public void GenerarDocumento(Document document)
  2.        {
  3.            PdfPTable datatable = new PdfPTable(dataGridView1.ColumnCount);
  4.            datatable.DefaultCell.Padding = 1;
  5.            float[] headerwidths = GetTamañoColumnas(dataGridView1);
  6.            datatable.SetWidths(headerwidths);
  7.            datatable.WidthPercentage = 100;
  8.            datatable.DefaultCell.BorderWidth = 3;
  9.            datatable.DefaultCell.HorizontalAlignment = Element.ALIGN_LEFT;
  10.            for (int i = 0; i < dataGridView1.ColumnCount; i++)
  11.            {
  12.                datatable.AddCell(dataGridView1.Columns[i].HeaderText);
  13.  
  14.            }
  15.            datatable.HeaderRows = 0;
  16.            datatable.DefaultCell.BorderWidth = 1;
  17.  
  18.            for (int i = 0; i < dataGridView1.RowCount - 1; i++)
  19.            {
  20.                for (int j = 0; j < dataGridView1.ColumnCount; j++)
  21.                {
  22.                    datatable.AddCell(dataGridView1[j, i].Value.ToString());
  23.                    //string nmbre_prdcto = datatable.AddCell(dataGridView1[j, i].Value.ToString());
  24.                    //string primera = nmbre_prdcto.Substring(1, 1);
  25.                }
  26.                datatable.CompleteRow();
  27.            }
  28.            document.Add(datatable);
  29.        }
  30.        public float[] GetTamañoColumnas(DataGridView dg)
  31.        {
  32.            float[] values = new float[dg.ColumnCount];
  33.            for (int i = 0; i < dg.ColumnCount; i++)
  34.            {
  35.                values[i] = (float)dg.Columns[i].Width;
  36.            }
  37.            return values;
  38.        }

claro uso ITextSharp
« Última modificación: 9 Marzo 2011, 15:02 pm por Novlucker » En línea

Jorge MB
seba123neo


Desconectado Desconectado

Mensajes: 3.621



Ver Perfil WWW
Re: Ayuda con tipo de letra al exportar un datagrid a pdf
« Respuesta #5 en: 8 Marzo 2011, 23:04 pm »

no hacia falta que hagas otro post, podes editar el otro.

el geshi para C# es [ code=csharp] [ /code]
« Última modificación: 8 Marzo 2011, 23:06 pm por seba123neo » En línea

[D4N93R]
Wiki

Desconectado Desconectado

Mensajes: 1.646


My software never has bugs. Its just features!


Ver Perfil WWW
Re: Ayuda con tipo de letra al exportar un datagrid a pdf
« Respuesta #6 en: 9 Marzo 2011, 20:53 pm »

Bloqueo el tema porque ya tienes este que habla sobre el mismo tema.

https://foro.elhacker.net/net/insertar_en_una_nueva_hoja_de_al_pasar_de_una_letra_a_a_b_y_asi_sucesivamente_c-t321232.0.html;msg1588848#new

Un saludo
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
fuentes de letra del tipo lcd????
Diseño Gráfico
Joe Black 0 2,925 Último mensaje 2 Marzo 2006, 04:39 am
por Joe Black
Tipo de letra por defecto
Programación Visual Basic
‭lipman 6 3,765 Último mensaje 1 Enero 2007, 12:56 pm
por ‭lipman
Tipo de letra
Diseño Gráfico
MasterPunk 5 4,203 Último mensaje 30 Noviembre 2009, 16:23 pm
por Azielito
Tipo de Letra
Dudas Generales
maxx93 3 11,550 Último mensaje 17 Junio 2010, 22:21 pm
por maxx93
Decimales en datagrid y exportar a pdf c# « 1 2 »
.NET (C#, VB.NET, ASP)
joalbela 10 8,498 Último mensaje 15 Marzo 2011, 19:59 pm
por [D4N93R]
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines