Example usage for com.itextpdf.text FontFactory getFont

List of usage examples for com.itextpdf.text FontFactory getFont

Introduction

In this page you can find the example usage for com.itextpdf.text FontFactory getFont.

Prototype


public static Font getFont(final String fontname, final float size, final int style) 

Source Link

Document

Constructs a Font-object.

Usage

From source file:com.thelinh.gui.UpdateUser.java

private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButton1ActionPerformed
    Document document = new Document() {
    };//from   w  ww  .  j  a  v a  2 s.c  o  m
    try {
        JFileChooser jfc = new JFileChooser("Save File");
        if (jfc.showSaveDialog(null) == JFileChooser.APPROVE_OPTION) {
            jfc.setDialogTitle("Save File");
            FileOutputStream fos = new FileOutputStream(jfc.getSelectedFile());
            PdfWriter.getInstance(document, fos);
            document.open();
            Font rfont = FontFactory.getFont("C:\\Windows\\Fonts\\Calibri.ttf", IDENTITY_H, true);
            document.add(new Paragraph(
                    "                                                                TRNG ?I HC B?CH KHOA H NI",
                    rfont));
            document.add(new Paragraph(
                    "\t\t                                                                        KT QU TM KIM NGI DNG\n",
                    rfont));
            switch (k) {
            case 1:
                document.add(new Paragraph(
                        "                Tm kim theo m ng?i dng : " + txtSearch.getText() + "\n\n",
                        rfont));
                break;
            case 2:
                document.add(new Paragraph(
                        "                Tm kim theo mt khu : " + txtSearch.getText() + "\n\n",
                        rfont));
                break;
            case 3:
                document.add(new Paragraph("                Tm kim theo tn ng?i dng : "
                        + txtSearch.getText() + "\n\n", rfont));
                break;
            case 4:
                document.add(new Paragraph(
                        "                Tm kim theo lp :" + txtSearch.getText() + "\n\n", rfont));
                break;
            }
            PdfPTable table = new PdfPTable(5);
            PdfPCell header1 = new PdfPCell(new Paragraph("UserId", rfont));
            PdfPCell header2 = new PdfPCell(new Paragraph("Password", rfont));
            PdfPCell header3 = new PdfPCell(new Paragraph("UserName", rfont));
            PdfPCell header4 = new PdfPCell(new Paragraph("BirthDay", rfont));
            PdfPCell header5 = new PdfPCell(new Paragraph("Class", rfont));
            table.addCell(header1);
            table.addCell(header2);
            table.addCell(header3);
            table.addCell(header4);
            table.addCell(header5);

            TableModel tableModel = tbUser.getModel();
            for (int i = 0; i < tableModel.getRowCount(); i++) {
                table.addCell(new PdfPCell(new Paragraph((String) tableModel.getValueAt(i, 0), rfont)));
                table.addCell(new PdfPCell(new Paragraph((String) tableModel.getValueAt(i, 1), rfont)));
                table.addCell(new PdfPCell(new Paragraph((String) tableModel.getValueAt(i, 2), rfont)));
                SimpleDateFormat sdf = new SimpleDateFormat();
                table.addCell(new PdfPCell(new Paragraph(sdf.format(tableModel.getValueAt(i, 3)), rfont)));
                table.addCell(new PdfPCell(new Paragraph((String) tableModel.getValueAt(i, 4), rfont)));
            }
            document.add(table);
            document.add(new Paragraph(
                    "\n                                                                                          Ha Noi, November 4th, 2016\n",
                    rfont));
            document.add(new Paragraph(
                    "                                                                                                    Teacher\n",
                    rfont));
            document.add(new Paragraph(
                    "                                                                                                (Signed and Sealed)\n",
                    rfont));

            document.close();
            JOptionPane.showMessageDialog(null, "Save success");
        }
    } catch (FileNotFoundException ex) {
        Logger.getLogger(Statistics.class.getName()).log(Level.SEVERE, null, ex);
    } catch (DocumentException ex) {
        Logger.getLogger(Statistics.class.getName()).log(Level.SEVERE, null, ex);
    }
}

From source file:com.timesheet.export.PdfGenerator.java

@Override
protected void buildPdfDocument(Map<String, Object> model, Document document, PdfWriter writer,
        HttpServletRequest request, HttpServletResponse response) throws Exception {

    /* Add header*/
    Font fontHeader = FontFactory.getFont(FontFactory.TIMES_ROMAN, 22, Font.BOLD);
    Paragraph headerPara = new Paragraph("Time sheet report", fontHeader);
    headerPara.setSpacingAfter(20f);//from   ww w . ja v a 2s  .  c  o  m
    document.add(headerPara);

    /*Add user info*/
    User userProfile = (User) model.get("userprofile");
    Font fontUserInfo = FontFactory.getFont(FontFactory.TIMES_ROMAN, 16, Font.BOLD);
    document.add(new Paragraph("Name : " + userProfile.getName(), fontUserInfo));
    document.add(new Paragraph("User no. : " + userProfile.getUserIdentifier(), fontUserInfo));
    document.add(new Paragraph("Department : " + userProfile.getDepartment(), fontUserInfo));
    document.add(new Paragraph("Email : " + userProfile.getEmail(), fontUserInfo));
    Paragraph spacing = new Paragraph("");
    spacing.setSpacingAfter(20f);
    document.add(spacing);

    PdfPTable table = new PdfPTable(5);
    table.setWidthPercentage(100.0f);
    table.setWidths(new float[] { 5.0f, 3.0f, 3.0f, 3.0f, 10.0f });
    table.setSpacingBefore(10);

    // define font for table header row
    Font font = FontFactory.getFont(FontFactory.TIMES_ROMAN, 12, Font.BOLD);
    //font.setColor(BaseColor.WHITE);

    // define table header cell
    PdfPCell cell = new PdfPCell();
    //cell.setBackgroundColor(BaseColor.LIGHT_GRAY);
    cell.setPadding(5);
    cell.setBorderWidth(2.0f);
    cell.setBorder(Rectangle.BOTTOM);
    // get data model which is passed by the Spring container
    List<Booking> bookings = (List<Booking>) model.get("bookings");

    // write table header
    cell.setPhrase(new Phrase("Project", font));
    table.addCell(cell);
    // write table header
    cell.setPhrase(new Phrase("Option", font));
    table.addCell(cell);
    // write table header
    cell.setPhrase(new Phrase("Date", font));
    table.addCell(cell);
    // write table header
    cell.setPhrase(new Phrase("Duration", font));
    table.addCell(cell);
    // write table header
    cell.setPhrase(new Phrase("Description", font));
    table.addCell(cell);

    int sum = 0;

    Font fontData = FontFactory.getFont(FontFactory.TIMES_ROMAN, 11);

    for (Booking booking : bookings) {
        PdfPCell cell1 = new PdfPCell(new Phrase(
                booking.getProject().getProjectId() + "-" + booking.getProject().getName(), fontData));
        cell1.setBorder(Rectangle.BOTTOM);
        cell1.setPadding(5);
        table.addCell(cell1);
        PdfPCell cell2 = new PdfPCell(new Phrase(booking.getBookingOption().getOptionLabel(), fontData));
        cell2.setBorder(Rectangle.BOTTOM);
        cell2.setPadding(5);
        table.addCell(cell2);
        PdfPCell cell3 = new PdfPCell(new Phrase(formatDate(booking.getBookingDate()), fontData));
        cell3.setBorder(Rectangle.BOTTOM);
        cell3.setPadding(5);
        table.addCell(cell3);
        int hh = booking.getDuration() / 60;
        int mm = booking.getDuration() % 60;
        PdfPCell cell4 = new PdfPCell(new Phrase(hh + ":" + mm, fontData));
        cell4.setBorder(Rectangle.BOTTOM);
        cell4.setPadding(5);
        table.addCell(cell4);
        PdfPCell cell5 = new PdfPCell(
                new Phrase(StringEscapeUtils.escapeHtml(booking.getDescription()), fontData));
        cell5.setBorder(Rectangle.BOTTOM);
        cell5.setPadding(5);
        table.addCell(cell5);

        sum += booking.getDuration();
    }

    document.add(table);

    int sumHH = sum / 60;
    int sumMM = sum % 60;

    document.add(new Paragraph("Sum : " + sumHH + ":" + sumMM, fontUserInfo));
    //throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates.
}

From source file:com.vectorprint.report.itext.style.stylers.FieldFont.java

License:Open Source License

@Override
public <E> E style(E element, Object data) throws VectorPrintException {
    element = super.style(element, data);
    BaseField bf = getFromCell(element);
    if (bf != null) {

        com.itextpdf.text.Font f = FontFactory.getFont(getValue(FAMILY_PARAM, String.class),
                getValue(SIZE_PARAM, Float.class), getValue(STYLE_PARAM, Font.STYLE.class).getStyle());
        if (f.getBaseFont() == null) {
            throw new VectorPrintRuntimeException(
                    "font " + f.getFamilyname() + " does not have a basefont, check your fontloading");
        }//  www  . j a  v a2  s . co  m
        bf.setFont(f.getBaseFont());
        bf.setFontSize(getValue(SIZE_PARAM, Float.class));
        bf.setTextColor(itextHelper.fromColor(getValue(COLOR_PARAM, Color.class)));
    }
    return element;
}

From source file:comedor.actions.OperacionesComedorAction.java

private void crearPDF() throws IOException, DocumentException {
    Restaurante restaurante = godr.obtenerDatosRestaurante();

    //Creamos el directorio donde almacenar los pdf sino existe
    File file = new File(RUTA_CUENTAS); //Especificamos la ruta
    if (!file.exists()) { //Si el directorio no existe
        if (file.mkdir()) { //Creamos el directorio
            //Le asignamos los permisos 777
            file.setExecutable(true);/*from w  w w  .  j  av a2s. c  o m*/
            file.setReadable(true);
            file.setExecutable(true);
        } else {
            System.err.println("Error al crear el directorio especificado");
            throw new IOException(); //Lanzamos una excepcion
        }
    }

    if (file.exists()) { //Si el directorio existe
        //Creamos el documento
        Document documento = new Document();
        //Creamos el OutputStream para el fichero pdf   
        FileOutputStream destino = new FileOutputStream(RUTA_CUENTAS + nombreDocumento);

        //Asociamos el FileOutputStream al Document
        PdfWriter.getInstance(documento, destino);
        //Abrimos el documento
        documento.open();

        //Aadimos el nombre del restaurante
        Font titulo = FontFactory.getFont(FontFactory.TIMES, 16, Font.BOLDITALIC);
        Chunk chunk = new Chunk(restaurante.getNombre(), titulo);
        Paragraph parrafo = new Paragraph(chunk);
        parrafo.setAlignment(Element.ALIGN_CENTER);
        documento.add(parrafo);
        //Aadimos la imagen
        String path = request.getServletContext().getRealPath("/img/elvis.png");
        Image foto = Image.getInstance(path);
        foto.scaleToFit(100, 100);
        foto.setAlignment(Chunk.ALIGN_MIDDLE);
        documento.add(foto);
        //Aadimos los datos del restaurante
        Font datos = FontFactory.getFont(FontFactory.TIMES, 12, Font.NORMAL);
        chunk = new Chunk(getText("cuenta.cif") + ": " + restaurante.getCif(), datos);
        documento.add(new Paragraph(chunk));
        chunk = new Chunk(getText("cuenta.direccion") + ": " + restaurante.getDireccion(), datos);
        documento.add(new Paragraph(chunk));
        chunk = new Chunk(getText("cuenta.telefono") + ": " + restaurante.getTelefono(), datos);
        documento.add(new Paragraph(chunk));
        //Aadimos los datos de la cuenta
        chunk = new Chunk(getText("cuenta.cuentaId") + ": " + cuenta.getId(), datos);
        documento.add(new Paragraph(chunk));
        SimpleDateFormat formatoFecha = new SimpleDateFormat("dd-MM-yyyy");
        chunk = new Chunk(getText("cuenta.fecha") + ": " + formatoFecha.format(cuenta.getFecha()), datos);
        documento.add(new Paragraph(chunk));
        SimpleDateFormat formtoHora = new SimpleDateFormat("HH:mm:ss");
        chunk = new Chunk(getText("cuenta.hora") + ": " + formtoHora.format(cuenta.getFecha()), datos);
        documento.add(new Paragraph(chunk));
        //Aadimos los datos del pedido
        //Obtenemos el usuario, es decir, del camarero con el nombre que tenemos registrado en la session 
        chunk = new Chunk(getText("cuenta.camarero") + ": " + session.get("usuario").toString(), datos);
        documento.add(new Paragraph(chunk));
        documento.add(new Chunk(Chunk.NEWLINE)); //Salto de linea        
        //Aadimos la tabla con los datos del pedido
        //Creamos una tabla
        PdfPTable tabla = new PdfPTable(4); //Especificamos el numero de columnas
        //Aadimos la cabecera de la tabla
        tabla.addCell(getText("cuenta.producto"));
        tabla.addCell(getText("cuenta.unidades"));
        tabla.addCell(getText("cuenta.pvp"));
        tabla.addCell(getText("cuenta.total"));
        for (Producto producto : pedido.getListaProductos()) {
            tabla.addCell(producto.getNombre());
            tabla.addCell(String.valueOf(producto.getUnidades()));
            tabla.addCell(String.valueOf(producto.getPrecio()));
            tabla.addCell(String.valueOf(producto.getPrecio() * producto.getUnidades()));

            if (producto instanceof Hamburguesa) {
                Hamburguesa h = (Hamburguesa) producto;
                for (Producto extra : h.getListaProductosExtra()) {
                    tabla.addCell("(E) " + extra.getNombre());
                    tabla.addCell(String.valueOf(extra.getUnidades()));
                    tabla.addCell(String.valueOf(extra.getPrecio()));
                    tabla.addCell(String.valueOf(extra.getPrecio() * extra.getUnidades()));
                }
            }
        }
        //Aadimos la tabla al documento
        documento.add(tabla);
        documento.add(new Chunk(Chunk.NEWLINE)); //Salto de linea
        //Aadimos una tabla con los impuestos y el total a pagar
        tabla = new PdfPTable(3); //Especificamos el numero de columnas    
        tabla.addCell(getText("cuenta.baseImponible") + ": " + pedido.getImporte() + "");
        tabla.addCell("");
        tabla.addCell("");
        DecimalFormat formato = new DecimalFormat("#.##");
        for (Impuesto dato : listaImpuestos) {
            tabla.addCell("");
            tabla.addCell(dato.getNombre() + ": " + dato.getValor());
            double impuesto = (pedido.getImporte() * dato.getValor()) / 100;
            tabla.addCell(
                    getText("cuenta.impuesto") + " " + dato.getNombre() + ": " + formato.format(impuesto));
        }
        tabla.addCell(getText("cuenta.total") + ": " + cuenta.getCantidad() + "");
        tabla.addCell("");
        tabla.addCell("");
        //Aadimos la tabla al documento
        documento.add(tabla);

        //Cerramos el documento
        documento.close();

    } else { //Si el directoiro no existe
        System.err.println("OperacionesComedorAction. Error no existe el directorio especificado");
        throw new IOException(); //Lanzamos una excepcion
    }
}

From source file:ConexionBD.CreaPrefichaPDF.java

public ByteArrayOutputStream ElaboraPreficha(String curp, ServletContext d) throws IOException {
    System.out.println("Elaborando preficha....");

    PrefichaModel prefichaR = VerificaDAO.recuperaPreficha(Constants.BD_NAME, Constants.BD_PASS, curp);
    Paragraph vacio = new Paragraph("  ", FontFactory.getFont("arial", 10, Font.BOLD));
    vacio.setAlignment(Element.ALIGN_CENTER);
    Document preficha = new Document();
    ByteArrayOutputStream baos = new ByteArrayOutputStream();
    try {/*  w  ww.j  av a2  s  .  co m*/
        PdfWriter writer = PdfWriter.getInstance(preficha, baos);
        preficha.open();
        Paragraph depto = new Paragraph("Departamento de servicios escolares",
                FontFactory.getFont("arial", 20, Font.BOLD));
        depto.setAlignment(Element.ALIGN_CENTER);
        preficha.add(depto);

        PdfContentByte rectangulo_general = writer.getDirectContentUnder();
        rectangulo_general.rectangle(50, 48, 500, 710);
        rectangulo_general.fill();
        drawRectangleSC(rectangulo_general, 50, 48, 500, 710);

        if (prefichaR.getExiste() == 1) {
            preficha.add(vacio);
            preficha.add(vacio);
            Paragraph periodo_text = new Paragraph(
                    "Convocatoria de nuevo ingreso periodo: " + prefichaR.getPeriodobd(),
                    FontFactory.getFont("arial", 10, Font.BOLD));
            periodo_text.setAlignment(Element.ALIGN_CENTER);
            preficha.add(periodo_text);

            preficha.add(vacio);
            preficha.add(vacio);

            Paragraph fotografia = new Paragraph("", FontFactory.getFont("arial", 10, Font.BOLD));
            fotografia.setAlignment(Element.ALIGN_CENTER);
            preficha.add(fotografia);
            preficha.add(vacio);
            String url_logo = "/Imagenes/itt_logo_opt.jpg";
            String absolute_url_logo = d.getRealPath(url_logo);
            Image itt_logo = Image.getInstance(absolute_url_logo);

            Image Logo_itt = Image.getInstance(itt_logo);
            Logo_itt.setAbsolutePosition(260f, 640f);
            preficha.add(Logo_itt);

            PdfContentByte rectangulo_periodo = writer.getDirectContentUnder();
            rectangulo_periodo.rectangle(125, 725, 350, 20);
            rectangulo_periodo.fill();
            drawRectangleSC(rectangulo_periodo, 125, 725, 350, 20);

            String url_logo_bnmx = "/Imagenes/bnmx_color_opt.jpg";
            String absolute_url_logo_bnmx = d.getRealPath(url_logo_bnmx);
            Image bnmx_logo = Image.getInstance(absolute_url_logo_bnmx);

            Image Logo_banco = Image.getInstance(bnmx_logo);
            Logo_banco.setAbsolutePosition(380f, 310f);
            preficha.add(Logo_banco);

            preficha.add(vacio);

            PdfContentByte fechaimpr = writer.getDirectContentUnder();
            fechaimpr.rectangle(416, 635, 100, 35);
            fechaimpr.fill();
            drawRectangleSC(fechaimpr, 416, 635, 100, 35);

            Paragraph fechapdf_impr = new Paragraph("\tFecha de impresin                ",
                    FontFactory.getFont("arial", 10, com.itextpdf.text.Font.BOLD));
            fechapdf_impr.setAlignment(Element.ALIGN_RIGHT);
            preficha.add(fechapdf_impr);

            Paragraph fechapdf_fec = new Paragraph(
                    "\t" + prefichaR.getFechapdf() + "                          ",
                    FontFactory.getFont("arial", 10, com.itextpdf.text.Font.BOLD));
            fechapdf_fec.setAlignment(Element.ALIGN_RIGHT);
            preficha.add(fechapdf_fec);

            preficha.add(vacio);

            Paragraph no_preficha = new Paragraph("Preficha N: " + prefichaR.getPrefichabd(),
                    FontFactory.getFont("arial", 20, Font.BOLD));
            no_preficha.setAlignment(Element.ALIGN_CENTER);
            preficha.add(no_preficha);

            preficha.add(vacio);

            PdfContentByte rectangulo_preficha_no = writer.getDirectContentUnder();
            rectangulo_preficha_no.rectangle(85, 590, 430, 25);
            rectangulo_preficha_no.fill();
            drawRectangleSC(rectangulo_preficha_no, 85, 590, 430, 25);

            PdfContentByte rectangulo_datos = writer.getDirectContentUnder();
            rectangulo_datos.rectangle(85, 480, 430, 105);
            rectangulo_datos.fill();
            drawRectangleSC(rectangulo_datos, 85, 480, 430, 105);

            Paragraph nombre = new Paragraph(
                    "                                                                              Nombre:   "
                            + prefichaR.getNombrebd(),
                    FontFactory.getFont("arial", 10, Font.BOLD));
            nombre.setAlignment(Element.ALIGN_LEFT);
            preficha.add(nombre);

            Paragraph apellidos = new Paragraph(
                    "                                                                                               "
                            + prefichaR.getApellidosbd(),
                    FontFactory.getFont("arial", 10, Font.BOLD));
            apellidos.setAlignment(Element.ALIGN_LEFT);
            preficha.add(apellidos);

            Paragraph CURP = new Paragraph(
                    "                                                                                 CURP:   "
                            + prefichaR.getCurpbd(),
                    FontFactory.getFont("arial", 10, Font.BOLD));
            CURP.setAlignment(Element.ALIGN_LEFT);
            preficha.add(CURP);

            Paragraph carrera = new Paragraph("Carrera Solicitada:",
                    FontFactory.getFont("arial", 10, Font.BOLD));
            carrera.setAlignment(Element.ALIGN_CENTER);
            preficha.add(carrera);

            Paragraph Nomcarrera = new Paragraph(prefichaR.getCarrerabd(),
                    FontFactory.getFont("arial", 10, Font.BOLD));
            Nomcarrera.setAlignment(Element.ALIGN_CENTER);
            preficha.add(Nomcarrera);

            Paragraph modalidad = new Paragraph(
                    "                                                                          Modalidad:   "
                            + prefichaR.getModalidadbd(),
                    FontFactory.getFont("arial", 10, Font.BOLD));
            modalidad.setAlignment(Element.ALIGN_LEFT);
            preficha.add(modalidad);

            preficha.add(vacio);
            //                    preficha.add(vacio);

            Paragraph formatoBanamex = new Paragraph(
                    "\nFORMATO UNIVERSAL PARA DEPSITOS EN SUCURSALES BANAMEX",
                    FontFactory.getFont("arial", 10, Font.BOLD));
            formatoBanamex.setAlignment(Element.ALIGN_CENTER);
            preficha.add(formatoBanamex);

            PdfContentByte rectanguloDepositoB = writer.getDirectContentUnder();
            rectanguloDepositoB.rectangle(85, 440, 430, 20);
            rectanguloDepositoB.fill();
            drawRectangle(rectanguloDepositoB, 85, 440, 430, 20);

            PdfContentByte rectanguloPago = writer.getDirectContentUnder();
            rectanguloPago.rectangle(85, 250, 430, 190);
            rectanguloPago.fill();
            drawRectangleSC(rectanguloPago, 85, 250, 430, 190);

            preficha.add(vacio);

            PdfContentByte rectanguloConcepto = writer.getDirectContentUnder();
            rectanguloConcepto.rectangle(150, 395, 295, 35);
            rectanguloConcepto.fill();
            drawRectangleSC(rectanguloConcepto, 150, 395, 295, 35);

            Paragraph formatoConceptoPre = new Paragraph("CONCEPTO: PAGO DE DERECHO A EXAMEN DE ADMISIN",
                    FontFactory.getFont("arial", 10, Font.BOLD));
            formatoConceptoPre.setAlignment(Element.ALIGN_CENTER);
            preficha.add(formatoConceptoPre);
            Paragraph fechaEmision = new Paragraph("FECHA L?MITE DE PAGO: " + prefichaR.getFecha_limite_pago(),
                    FontFactory.getFont("arial", 10, Font.BOLD));
            fechaEmision.setAlignment(Element.ALIGN_CENTER);
            preficha.add(fechaEmision);

            preficha.add(vacio);
            preficha.add(vacio);

            Paragraph importe = new Paragraph("IMPORTE A PAGAR: $" + prefichaR.getImporte_bd() + ".",
                    FontFactory.getFont("arial", 15, Font.BOLD));
            importe.setAlignment(Element.ALIGN_CENTER);
            preficha.add(importe);

            preficha.add(vacio);
            preficha.add(vacio);
            preficha.add(vacio);

            String ref = prefichaR.getRef_bancaria();

            Paragraph referencia = new Paragraph(
                    "                                                   REFERENCIA (B): " + ref,
                    FontFactory.getFont("arial", 10, Font.BOLD));
            referencia.setAlignment(Element.ALIGN_LEFT);
            preficha.add(referencia);

            preficha.add(vacio);
            preficha.add(vacio);
            preficha.add(vacio);
            preficha.add(vacio);

            Paragraph atencion = new Paragraph("Atencin", FontFactory.getFont("arial", 15, Font.BOLD));
            atencion.setAlignment(Element.ALIGN_CENTER);
            preficha.add(atencion);

            PdfContentByte rectangulo_atencion = writer.getDirectContentUnder();
            rectangulo_atencion.rectangle(245, 198, 100, 25);
            rectangulo_atencion.fill();
            drawRectangle(rectangulo_atencion, 245, 198, 100, 25);

            PdfContentByte rectangulo_info = writer.getDirectContentUnder();
            rectangulo_info.rectangle(85, 60, 430, 100);
            rectangulo_info.fill();
            drawRectangle(rectangulo_info, 85, 60, 430, 120);

            preficha.add(vacio);
            preficha.add(vacio);

            Paragraph informacion = new Paragraph(
                    "                        Para continuar con el proceso de preinscripcin deber:\n"
                            + "                           - Realizar el pago para su examen de admisin con la \"REFERENCIA\" que aparece\n"
                            + "                             en este documento en cualquier sucursal BANAMEX.\n"
                            + "                           - Recibir la notificacin en su correo electrnico y estar al pendiente de \n"
                            + "                             las notificaciones que sern enviadas al mismo de que el pago ya fue procesado \n"
                            + "                             para completar su proceso de preinscripcin.\n",
                    FontFactory.getFont("arial", 10, Font.BOLD));
            informacion.setAlignment(Element.ALIGN_LEFT);
            preficha.add(informacion);

            preficha.addTitle("Preficha");
            preficha.addSubject("Instituto Tecnolgico de Toluca");
            preficha.addKeywords("Instituto Tecnolgico de Toluca");
            preficha.addAuthor("Departamento de Servicios escolares");
            preficha.addCreator("Departamento de Servicios escolares");
        } else {

            preficha.add(vacio);
            preficha.add(vacio);
            preficha.add(vacio);
            preficha.add(vacio);
            preficha.add(vacio);
            preficha.add(vacio);

            Paragraph curpNoEncontrada = new Paragraph(
                    "                                                              Lo sentimos, no se encontraron "
                            + "                                                                                coincidencias con su clave CURP.",
                    FontFactory.getFont("arial", 14, Font.BOLD));
            curpNoEncontrada.setAlignment(Element.ALIGN_LEFT);
            preficha.add(curpNoEncontrada);

            preficha.add(vacio);
            preficha.add(vacio);
            preficha.add(vacio);

            Paragraph curp_no = new Paragraph(curp, FontFactory.getFont("arial", 19, Font.PLAIN));
            curp_no.setAlignment(Element.ALIGN_CENTER);
            preficha.add(curp_no);
            preficha.add(vacio);
            preficha.add(vacio);
            preficha.add(vacio);
            preficha.add(vacio);

            Paragraph lamenta = new Paragraph(""
                    + "El deparamento de servicios escolares lamenta los inconvenientes ocurridos al intentar recuperar su preficha."
                    + "", FontFactory.getFont("arial", 19, Font.BOLD));
            lamenta.setAlignment(Element.ALIGN_CENTER);
            preficha.add(lamenta);

            preficha.add(vacio);
            preficha.add(vacio);
            preficha.add(vacio);
            preficha.add(vacio);
            preficha.add(vacio);
            preficha.add(vacio);

            Paragraph se_le_aconseja = new Paragraph("           RECOMENDACIONES",
                    FontFactory.getFont("arial", 14, Font.BOLD));
            se_le_aconseja.setAlignment(Element.ALIGN_LEFT);
            preficha.add(se_le_aconseja);

            Paragraph msjCurp = new Paragraph("\n"
                    + "              - Le aconsejamos revisar su CURP, ya que sin esta, no podr recuperar su preficha.\n"
                    + "              - Si el problema contina, acuda con esta hoja al departamento de SERVICIOS ESCOLARES (Edif.\n"
                    + "                X) de lunes a viernes de 9:00 a 18:00 horas, de lo contrario \n"
                    + "                haga su registro.\n"
                    + "              - Revise que en el proceso de registro cada paso se haya terminado correctamente\n"
                    + "              - Revise el manual de proceso de registro que se encuentra en la pgina www.ittoluca.edu.mx\n"
                    + "              - Revise el apartado de preguntas frecuentes que se encuentra en la pgina www.ittoluca.edu.mx\n"
                    + "              - En la seccin de contacto, se encuentran el telfono de contacto y la extensin.\n"
                    + "              - Otra alternativa es enviar un correo exponiendo su situacin al departamento de servicios \n"
                    + "                escolares." + "\n" + "" + "",
                    FontFactory.getFont("arial", 10, Font.BOLD));
            msjCurp.setAlignment(Element.ALIGN_LEFT);
            preficha.add(msjCurp);

            preficha.add(vacio);
            preficha.add(vacio);
            preficha.add(vacio);

            Paragraph no_comprobante = new Paragraph(""
                    + "Este documento carece de validz oficial, su funcin es servir como medio de comunicacin.",
                    FontFactory.getFont("arial", 8, Font.PLAIN, BaseColor.RED));
            no_comprobante.setAlignment(Element.ALIGN_CENTER);
            preficha.add(no_comprobante);

            //                    preficha.add(vacio);
            String url_logo = "/Imagenes/itt_logo_opt.jpg";
            String absolute_url_logo = d.getRealPath(url_logo);
            Image itt_logo = Image.getInstance(absolute_url_logo);

            Image Logo_itt = Image.getInstance(itt_logo);
            Logo_itt.setAbsolutePosition(140f, 640f);
            preficha.add(Logo_itt);
        }
        preficha.close();
        return baos;
    } catch (DocumentException docE) {
        throw new IOException(docE.getMessage());
    }
}

From source file:controller.pdf.java

/**
 * Processes requests for both HTTP <code>GET</code> and <code>POST</code>
 * methods./*from  w  w w  .j ava 2  s .c o  m*/
 *
 * @param request servlet request
 * @param response servlet response
 * @throws ServletException if a servlet-specific error occurs
 * @throws IOException if an I/O error occurs
 */
protected void processRequest(HttpServletRequest request, HttpServletResponse response)
        throws ServletException, IOException {
    response.setContentType("application/pdf");

    OutputStream out = response.getOutputStream();

    try {

        String especialidad = request.getParameter("especialidad");
        String turno = request.getParameter("turno");
        String dia = request.getParameter("dia");

        Document documento = new Document();
        documento.setPageSize(PageSize.A4);
        documento.setPageSize(PageSize.A4.rotate());

        //                Rectangle one = new Rectangle(70,140);
        //                documento.setPageSize(one);
        //                documento.setMargins(2, 2, 2, 2);

        PdfWriter.getInstance(documento, out);

        documento.open();

        Paragraph par1 = new Paragraph();
        Font fonttitulo = new Font(Font.FontFamily.HELVETICA, 25, Font.BOLD, BaseColor.BLACK);
        if (turno.equalsIgnoreCase("M")) {
            par1.add(new Phrase("Citas del dia: " + dia + " Turno Maana", fonttitulo));
        } else {
            par1.add(new Phrase("Citas del dia: " + dia + " Turno Tarde", fonttitulo));
        }

        par1.setAlignment(Element.ALIGN_CENTER);
        par1.add(new Phrase(Chunk.NEWLINE));
        par1.add(new Phrase(Chunk.NEWLINE));
        par1.add(new Phrase(Chunk.NEWLINE));
        documento.add(par1);

        PdfPTable tabla = new PdfPTable(9);
        PdfPCell celda1 = new PdfPCell(
                new Paragraph("Codigo Cita", FontFactory.getFont("Arial", 12, Font.BOLD)));
        PdfPCell celda2 = new PdfPCell(
                new Paragraph("Especialidad", FontFactory.getFont("Arial", 12, Font.BOLD)));
        PdfPCell celda3 = new PdfPCell(
                new Paragraph("Codigo Paciente", FontFactory.getFont("Arial", 12, Font.BOLD)));
        PdfPCell celda4 = new PdfPCell(new Paragraph("Nombre", FontFactory.getFont("Arial", 12, Font.BOLD)));
        PdfPCell celda5 = new PdfPCell(
                new Paragraph("Apellido Paterno", FontFactory.getFont("Arial", 12, Font.BOLD)));
        PdfPCell celda6 = new PdfPCell(
                new Paragraph("Apellido Materno", FontFactory.getFont("Arial", 12, Font.BOLD)));
        PdfPCell celda7 = new PdfPCell(new Paragraph("Hora", FontFactory.getFont("Arial", 12, Font.BOLD)));
        PdfPCell celda8 = new PdfPCell(new Paragraph("Doctor", FontFactory.getFont("Arial", 12, Font.BOLD)));
        PdfPCell celda9 = new PdfPCell(new Paragraph("Da", FontFactory.getFont("Arial", 12, Font.BOLD)));

        tabla.addCell(celda1);
        tabla.addCell(celda2);
        tabla.addCell(celda3);
        tabla.addCell(celda4);
        tabla.addCell(celda5);
        tabla.addCell(celda6);
        tabla.addCell(celda7);
        tabla.addCell(celda8);
        tabla.addCell(celda9);

        try {

            Connection conex = conexion.obtener();

            PreparedStatement consulta2 = conex.prepareStatement("call pacientegeneral_select();");
            ResultSet resultado2 = consulta2.executeQuery();

            while (resultado2.next()) {

                PreparedStatement consulta = conex.prepareStatement("call cita_select();");
                ResultSet resultado = consulta.executeQuery();

                while (resultado.next()) {

                    if (turno.equalsIgnoreCase("M") && resultado.getString(4).charAt(6) == 'A'
                            && resultado.getInt(3) == resultado2.getInt(1)
                            && resultado.getString(7).equalsIgnoreCase(dia)
                            && resultado.getString(2).equalsIgnoreCase(especialidad)) {

                        tabla.addCell(resultado.getString(1));
                        tabla.addCell(resultado.getString(2));
                        tabla.addCell(resultado2.getString(1));
                        tabla.addCell(resultado2.getString(2));
                        tabla.addCell(resultado2.getString(3));
                        tabla.addCell(resultado2.getString(4));
                        tabla.addCell(resultado.getString(4));
                        tabla.addCell(resultado.getString(5));
                        tabla.addCell(resultado.getString(7));

                    }

                }
            }

            conexion.cerrar();
        } catch (Exception ex) {
            JOptionPane.showMessageDialog(null, ex.toString());
        }

        try {

            Connection conex = conexion.obtener();

            PreparedStatement consulta2 = conex.prepareStatement("call pacientegeneral_select();");
            ResultSet resultado2 = consulta2.executeQuery();

            while (resultado2.next()) {

                PreparedStatement consulta = conex.prepareStatement("call cita_select();");
                ResultSet resultado = consulta.executeQuery();

                while (resultado.next()) {

                    if (turno.equalsIgnoreCase("T") && resultado.getString(4).charAt(6) == 'P'
                            && resultado.getInt(3) == resultado2.getInt(1)
                            && resultado.getString(7).equalsIgnoreCase(dia)
                            && resultado.getString(2).equalsIgnoreCase(especialidad)) {

                        tabla.addCell(resultado.getString(1));
                        tabla.addCell(resultado.getString(2));
                        tabla.addCell(resultado2.getString(1));
                        tabla.addCell(resultado2.getString(2));
                        tabla.addCell(resultado2.getString(3));
                        tabla.addCell(resultado2.getString(4));
                        tabla.addCell(resultado.getString(4));
                        tabla.addCell(resultado.getString(5));
                        tabla.addCell(resultado.getString(7));

                    }

                }
            }

            conexion.cerrar();
        } catch (Exception ex) {
            JOptionPane.showMessageDialog(null, ex.toString());
        }

        float[] columnWidths = new float[] { 15f, 30f, 18f, 23f, 23f, 23f, 20f, 25f, 18f };
        tabla.setWidths(columnWidths);

        documento.add(tabla);
        documento.close();

    } catch (Exception ex) {
        ex.getMessage();
    }

    String redirectURL = "citasemana.jsp";
    response.sendRedirect(redirectURL);

}

From source file:controller.PDFGenerator.java

@Override
public void GenerateDocument(Resolution doc) {
    String resId = "RES-IC-" + format(doc.getId()) + "-" + Calendar.getInstance().get(Calendar.YEAR);

    Document pdf = createDocument(resId + ".pdf");

    if (pdf == null)
        return;/*w w w.  j  a v a 2s. co  m*/

    try {
        pdf.open();
        Font boldFont = FontFactory.getFont(FontFactory.HELVETICA, 12, Font.BOLD);
        Font parFont = FontFactory.getFont(FontFactory.HELVETICA, 12, Font.NORMAL);

        Chunk chunk = new Chunk(doc.getTitle() + "\n\n", boldFont);
        Paragraph par = new Paragraph(chunk);
        par.setAlignment(Paragraph.ALIGN_CENTER);
        pdf.add(par);

        chunk = new Chunk(resId + "\n\n", boldFont);
        par = new Paragraph(chunk);
        par.setAlignment(Paragraph.ALIGN_CENTER);
        pdf.add(par);

        chunk = new Chunk("Atencin:    ", boldFont);
        par = new Paragraph(chunk);
        chunk = new Chunk(doc.getAttention() + "\n\n", parFont);
        par.add(chunk);
        par.setAlignment(Paragraph.ALIGN_LEFT);
        par.setIndentationLeft((float) 3.0);
        pdf.add(par);

        chunk = new Chunk(doc.getIntro() + "\n\n", parFont);
        par = new Paragraph(chunk);
        par.setAlignment(Paragraph.ALIGN_JUSTIFIED);
        pdf.add(par);

        chunk = new Chunk((doc.isOneresult() == true ? "RESULTANDO NICO:\n" : "RESULTANDO:\n"), boldFont);
        par = new Paragraph(chunk);
        chunk = new Chunk(doc.getResult() + "\n\n", parFont);
        par.add(chunk);
        par.setAlignment(Paragraph.ALIGN_JUSTIFIED);
        pdf.add(par);

        chunk = new Chunk((doc.isOneconsideration() == true ? "CONSIDERANDO NICO:\n" : "CONSIDERANDOS:\n"),
                boldFont);
        par = new Paragraph(chunk);
        chunk = new Chunk(doc.getConsider() + "\n\n", parFont);
        par.add(chunk);
        par.setAlignment(Paragraph.ALIGN_JUSTIFIED);
        pdf.add(par);

        chunk = new Chunk("RESUELVO:\n", boldFont);
        par = new Paragraph(chunk);
        chunk = new Chunk(doc.getResolve() + "\n\n", parFont);
        par.add(chunk);
        par.setAlignment(Paragraph.ALIGN_JUSTIFIED);
        pdf.add(par);

        chunk = new Chunk("NOTIFIQUESE:\n", boldFont);
        par = new Paragraph(chunk);
        par.setAlignment(Paragraph.ALIGN_LEFT);
        pdf.add(par);

        chunk = new Chunk(doc.getNotify(), parFont);
        par = new Paragraph(chunk);
        par.setAlignment(Paragraph.ALIGN_LEFT);
        par.setIndentationLeft(250);
        pdf.add(par);

        pdf.close();
    } catch (Exception ex) {
        System.out.println("Error writirn pdf.");
    }
}

From source file:de.extra.xtt.util.pdf.PdfCreatorImpl.java

License:Apache License

private Paragraph getEmptyLinesText(int fontSize, int countLines) {
    Paragraph pg = new Paragraph("\n", FontFactory.getFont(fontNameStandard, fontSize, Font.NORMAL));
    for (int i = 1; i < countLines; i++) {
        pg.add(new Paragraph("", FontFactory.getFont(fontNameStandard, fontSize, Font.NORMAL)));
    }//w  w  w.j a va2 s . c o m
    return pg;
}

From source file:de.extra.xtt.util.pdf.PdfCreatorImpl.java

License:Apache License

private Chunk getChunkChapter(String text) {
    return new Chunk(text, FontFactory.getFont(fontNameStandard, fontSizeChapter, Font.BOLD));
}

From source file:de.extra.xtt.util.pdf.PdfCreatorImpl.java

License:Apache License

private Chunk getChunkElement(String text) {
    return new Chunk(text, FontFactory.getFont(fontNameStandard, fontSizeElement, Font.BOLD));
}