Descargas, guías, trucos, gameplays...

viernes, 1 de junio de 2012

iTextSharp y VB .Net: Tipo de fuente






The iText library is free software; you can redistribute it and/or modify it under the terms of the GNU Affero General Public License version 3. Please read the terms of use before downloading iText.

Descarga iTextSharp: http://itextpdf.com/download.php

Con iTextSharp también es posible personalizar el tipo de fuente que se desea, para no tener que ajustarse siempre a las que ya tiene definidas la librería. A continuación el siguiente ejemplo muestra como escribir texto en un pdf con las fuentes Arial, Calibri y Verdana:



Imports iTextSharp.text.pdf
Imports iTextSharp.text
Imports System.IO

Public Class Form1

    Private Sub Button1_Click(sender As System.Object, e As System.EventArgs) Handles Button1.Click
        Dim ruta As String = "itextsharp - tipo de fuente.pdf" 'ruta del pdf (se creara en la carpeta Debug del proyecto
        Dim textoArial As String = "Ejemplo de personalizacion de fuente Arial"
        Dim textoCalibri As String = "Ejemplo de personalizacion de fuente Calibri"
        Dim textoVerdana As String = "Ejemplo de personalizacion de fuente Verdana"
        Dim documento As New iTextSharp.text.Document(PageSize.LETTER, 72, 72, 72, 72)
        Dim pdfw As iTextSharp.text.pdf.PdfWriter

        'craeación de fuentes arial, calibri y verdana
        Dim fuenteArial As New Font(BaseFont.CreateFont("c:/windows/fonts/arial.ttf", BaseFont.WINANSI, BaseFont.EMBEDDED), 12)
        Dim fuenteCalibri As New Font(BaseFont.CreateFont("c:/windows/fonts/calibri.ttf", BaseFont.WINANSI, BaseFont.EMBEDDED), 12)
        Dim fuenteVerdana As New Font(BaseFont.CreateFont("c:/windows/fonts/verdana.ttf", BaseFont.WINANSI, BaseFont.EMBEDDED), 12)

        pdfw = PdfWriter.GetInstance(documento, New FileStream(ruta, FileMode.Create, FileAccess.Write, FileShare.None))

        'Apertura del documento.
        documento.Open()

        'Agregamos una pagina.
        documento.NewPage()

        'creación de parrafos con fuentes
        Dim parafoArial As New Chunk(textoArial, fuenteArial)
        Dim parafoCalibri As New Chunk(textoCalibri, fuenteCalibri)
        Dim parafoVerdana As New Chunk(textoVerdana, fuenteVerdana)

        documento.Add(parafoArial)
        documento.Add(New Paragraph(parafoCalibri)) 'escribir en nuevo parrafo para que los parrafos no queden sobre escritos
        documento.Add(New Paragraph(parafoVerdana)) 'escribir en nuevo parrafo para que los parrafos no queden sobre escritos

        'Forzamos vaciamiento del buffer.
        pdfw.Flush()
        'Cerramos el documento.
        documento.Close()

        pdfw = Nothing
        documento = Nothing

    End Sub
End Class

Con este código se obtiene el siguiente documento:

El documento pdf esta en la carpeta Debug del proyecto.

Descarga del ejemplo aquí: itextsharp - tipo de fuente.rar