Example usage for com.itextpdf.text Image scalePercent

List of usage examples for com.itextpdf.text Image scalePercent

Introduction

In this page you can find the example usage for com.itextpdf.text Image scalePercent.

Prototype

public void scalePercent(final float percent) 

Source Link

Document

Scale the image to a certain percentage.

Usage

From source file:GUI.FacturasUsuariosGUI.java

private void jButton4ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButton4ActionPerformed
    try {/*from  w  ww .ja  v  a  2s . c om*/
        int fila = listarFacturas.getSelectedRow();
        if (fila != -1) {
            String cedula = (String) modeloFacturas.getValueAt(fila, 1);
            String numeroFactura = (String) modeloFacturas.getValueAt(fila, 0);

            SimpleDateFormat fecha = new SimpleDateFormat("dd/MM/yyyy HH:mm:ss");
            Usuario u = us.recuperarUsuario(cedula);
            LinkedList<Factura> f = fs.recuperarFacturas(cedula);

            com.itextpdf.text.Document document = new com.itextpdf.text.Document(PageSize.LETTER, 50, 50, 50,
                    50);
            Image imagen, publicidad;
            imagen = Image.getInstance("src//IMG//logohd.png");
            imagen.setAlignment(Element.ALIGN_CENTER);
            imagen.scalePercent(60f);

            //publicidad
            //            publicidad = Image.getInstance("LOGO.png");
            //            publicidad.setAlignment(Element.ALIGN_CENTER);
            //            publicidad.scalePercent(40f);
            //            Document doc = new Document();
            //            PdfWriter
            PdfWriter writer = PdfWriter.getInstance(document, new FileOutputStream("factura.pdf"));
            document.open();
            document.add(imagen);
            document.add(new Paragraph(
                    "____________________________________________________________________________"));
            document.add(new Paragraph(
                    "____________________________________________________________________________"));
            document.add(new Paragraph(
                    "|                                                   FACTURAS PARQUEADERO                                                   |"));
            document.add(new Paragraph(
                    "____________________________________________________________________________"));
            document.add(new Paragraph("RUC: 0102030405067 "));
            document.add(new Paragraph("Numero Fact: 00000" + numeroFactura));
            document.add(new Paragraph("Cliente : " + u.getNombre() + " " + u.getApellido()));
            document.add(new Paragraph("N de cdula : " + u.getCedula()));
            document.add(
                    new Paragraph("Fecha : " + new SimpleDateFormat("dd/MM/yyyy HH:mm:ss").format(new Date())));
            document.add(new Paragraph(
                    "____________________________________________________________________________"));
            document.add(new Paragraph("Placas : " + u.getVehiculo().getPlaca()));
            document.add(new Paragraph("Marca : " + u.getVehiculo().getMarca()));
            document.add(new Paragraph("Modelo : " + u.getVehiculo().getModelo()));
            document.add(new Paragraph(
                    "____________________________________________________________________________"));
            document.add(new Paragraph(
                    "| N |    FECHA Y HORA DE ENTRADA    |    FECHA Y HORA DE SALIDA    |      TIEMPO       |"));
            for (int i = 0; i < f.get(fila).getListaDetalleFacturas().size(); i++) {
                document.add(new Paragraph("|  " + (i + 1) + "  |             "
                        + fecha.format(f.get(fila).getListaDetalleFacturas().get(i).getFechaHoraEntrada())
                        + "             |            "
                        + fecha.format(f.get(fila).getListaDetalleFacturas().get(i).getFechaHoraSalida())
                        + "          |      " + f.get(fila).getListaDetalleFacturas().get(i).getTiempo()
                        + "      |"));
            }
            document.add(new Paragraph(
                    "____________________________________________________________________________"));
            document.add(new Paragraph(
                    "____________________________________________________________________________"));
            document.add(new Paragraph("              Subtotal : " + f.get(fila).getSubtotal()));
            document.add(new Paragraph("              Iva : " + f.get(fila).getIva()));
            document.add(new Paragraph("              Total : " + f.get(fila).getTotal()));
            document.add(new Paragraph(
                    "____________________________________________________________________________"));
            document.add(new Paragraph(
                    "____________________________________________________________________________"));
            document.close();
            File path = new File("factura.pdf");
            Desktop.getDesktop().open(path);
            this.setVisible(false);
            new ParqueaderoMAINGUI().setVisible(true);
        } else {
            JOptionPane.showMessageDialog(this, "Para generar un pdf debe seleccionar alguna factura");
        }
    } catch (Exception e) {
    }
}

From source file:Integral.PDF.java

/**
 * Crea un objeto imagen de tipo Chunk//from  ww  w .  j a  v a2 s  . co m
 * @param archivo Ruta de la imagen
 * @param x Posision en x para la imagen dentro del archivo
 * @param y Posision en y para la imagen dentro del archivo
 * @param escala escala de la imagen en porcentaje
 * @return Retorna una objeto de tipo Chunk
 */
public Chunk crearImagen(String archivo, int x, int y, int escala) {
    try {
        RandomAccessFile rf1 = new RandomAccessFile(ruta + archivo, "r");
        int size1 = (int) rf1.length();
        byte imagedata[] = new byte[size1];
        rf1.readFully(imagedata);
        rf1.close();
        Image img11 = Image.getInstance(imagedata);
        img11.scalePercent(escala);
        Chunk logo = new Chunk(img11, x, y);
        return logo;
    } catch (Exception e) {
        System.out.println(e);
        return null;
    }
}

From source file:io.github.nick11roberts.pdf_drive.PreviewActivity.java

License:Open Source License

public void addImagesToPDF() throws Exception {
    Document document = new Document();
    ByteArrayOutputStream stream;
    Bitmap bmpImage;//from w  ww  .j  a v a2 s  .  c o  m
    byte[] imagebytes;
    Image image;
    float scaler;
    PdfWriter.getInstance(document, new FileOutputStream(tmpPdfFile));
    document.open();
    for (int i = camIndex - 1; i >= 0; i--) {
        stream = new ByteArrayOutputStream();
        bmpImage = Bitmap.createBitmap(imagesFromCamera.get(i));
        //bmpImage = rotateImage(bmpImage, -90);         
        bmpImage.compress(Bitmap.CompressFormat.JPEG, 100, stream);
        imagebytes = stream.toByteArray();
        image = Image.getInstance(imagebytes);
        scaler = ((document.getPageSize().getWidth()) / image.getWidth()) * 100;
        image.scalePercent(scaler);
        image.setAlignment(Image.MIDDLE | Image.ALIGN_MIDDLE);
        document.add(image);
        document.newPage();
        stream.close();
        stream = null;
    }

    document.close();
}

From source file:it.vige.magazzino.pdf.Format1DocumentReceipt.java

License:Apache License

@Model
public void build(Receipt receipt) throws Exception {
    ResourceBundle bundle = ResourceBundle.getBundle("messages");

    Document document = new Document();
    ByteArrayOutputStream bytesOS = new ByteArrayOutputStream();
    PdfWriter writer = PdfWriter.getInstance(document, bytesOS);
    document.open();//  www .j a va  2  s.c om

    Font normalFont = new Font();
    Font headerFont = FontFactory.getFont(FontFactory.TIMES, 9);

    PdfContentByte canvas = writer.getDirectContentUnder();
    List<Data> imagesJar = receipt.getJar().getFiles();

    if (imagesJar != null && imagesJar.size() > 0) {
        Image image1 = Image.getInstance(imagesJar.get(0).getData());
        image1.setAbsolutePosition(166, 738);
        image1.scalePercent(60);
        document.add(image1);
        if (imagesJar.size() > 1) {
            Image image2 = Image.getInstance(imagesJar.get(1).getData());
            image2.setAbsolutePosition(326, 748);
            image2.scalePercent(40);
            document.add(image2);
        }
    }

    Phrase phrase1 = new Phrase(receipt.getJar().getRagSoc1(), normalFont);
    Phrase phrase2 = new Phrase(
            receipt.getJar().getAddress().getAddress() + " " + receipt.getJar().getAddress().getCivicNumber(),
            normalFont);
    Phrase phrase3 = new Phrase("Loc. " + receipt.getJar().getAddress().getTown() + " - "
            + receipt.getJar().getAddress().getCap() + " " + receipt.getJar().getAddress().getCity() + " ("
            + receipt.getJar().getAddress().getProvince() + ")", normalFont);
    Phrase phrase4 = new Phrase("Tel. " + receipt.getJar().getAddress().getPhone() + " r.a.Fax "
            + receipt.getJar().getAddress().getFax(), normalFont);
    Phrase phrase5 = new Phrase(
            receipt.getJar().getAddress().getSite() + " E-mail: " + receipt.getJar().getAddress().getEmail(),
            normalFont);
    ColumnText.showTextAligned(canvas, Element.ALIGN_LEFT, phrase1, 36, 784, 0);
    ColumnText.showTextAligned(canvas, Element.ALIGN_LEFT, phrase2, 36, 774, 0);
    ColumnText.showTextAligned(canvas, Element.ALIGN_LEFT, phrase3, 36, 764, 0);
    ColumnText.showTextAligned(canvas, Element.ALIGN_LEFT, phrase4, 36, 754, 0);
    ColumnText.showTextAligned(canvas, Element.ALIGN_LEFT, phrase5, 36, 744, 0);

    Phrase phrase6 = new Phrase(bundle.getString("magazzino_iva") + " " + receipt.getJar().getIva(),
            normalFont);
    Phrase phrase7 = new Phrase(bundle.getString("magazzino_capsoc") + " " + receipt.getJar().getCapSoc()
            + " - " + bundle.getString("magazzino_reapi") + " n. " + receipt.getJar().getReaPI(), normalFont);
    Phrase phrase8 = new Phrase("Reg. Impr. PI n. " + receipt.getJar().getIva(), normalFont);
    ColumnText.showTextAligned(canvas, Element.ALIGN_LEFT, phrase6, 36, 724, 0);
    ColumnText.showTextAligned(canvas, Element.ALIGN_LEFT, phrase7, 36, 714, 0);
    ColumnText.showTextAligned(canvas, Element.ALIGN_LEFT, phrase8, 36, 704, 0);

    Phrase phrase9 = new Phrase("prova 2: prova 2", normalFont);
    Phrase phrase10 = new Phrase("prova 3: prova 3", normalFont);
    Phrase phrase11 = new Phrase("prova 4: prova 4", normalFont);
    Phrase phrase12 = new Phrase("prova 2: prova 2", normalFont);
    Phrase phrase13 = new Phrase("prova 3: prova 3", normalFont);
    Phrase phrase14 = new Phrase("prova 4: prova 4", normalFont);
    Phrase phrase15 = new Phrase("prova 4: prova 4", normalFont);
    ColumnText.showTextAligned(canvas, Element.ALIGN_LEFT, phrase9, 36, 664, 0);
    ColumnText.showTextAligned(canvas, Element.ALIGN_LEFT, phrase10, 36, 654, 0);
    ColumnText.showTextAligned(canvas, Element.ALIGN_LEFT, phrase11, 36, 644, 0);
    ColumnText.showTextAligned(canvas, Element.ALIGN_LEFT, phrase12, 36, 634, 0);
    ColumnText.showTextAligned(canvas, Element.ALIGN_LEFT, phrase13, 36, 624, 0);
    ColumnText.showTextAligned(canvas, Element.ALIGN_LEFT, phrase14, 36, 614, 0);
    ColumnText.showTextAligned(canvas, Element.ALIGN_LEFT, phrase15, 36, 604, 0);

    List<Data> imagesCustomer = receipt.getCustomer().getFiles();

    if (imagesCustomer != null && imagesCustomer.size() > 0) {
        Image image3 = Image.getInstance(imagesCustomer.get(0).getData());
        image3.setAbsolutePosition(212, 664);
        image3.scalePercent(40);
        document.add(image3);
    }

    Phrase phrase16 = new Phrase(receipt.getCustomer().getName(), normalFont);
    Phrase phrase17 = new Phrase(receipt.getCustomer().getAddress().getAddress() + ", "
            + receipt.getCustomer().getAddress().getCivicNumber(), normalFont);
    Phrase phrase18 = new Phrase(
            receipt.getCustomer().getAddress().getCap() + " " + receipt.getCustomer().getAddress().getCity()
                    + " " + receipt.getCustomer().getAddress().getProvince(),
            normalFont);
    ColumnText.showTextAligned(canvas, Element.ALIGN_LEFT, phrase16, 206, 644, 0);
    ColumnText.showTextAligned(canvas, Element.ALIGN_LEFT, phrase17, 206, 624, 0);
    ColumnText.showTextAligned(canvas, Element.ALIGN_LEFT, phrase18, 206, 604, 0);

    Phrase phrase19 = new Phrase("prova", normalFont);
    Phrase phrase20 = new Phrase("prova", normalFont);
    ColumnText.showTextAligned(canvas, Element.ALIGN_LEFT, phrase19, 316, 694, 0);
    ColumnText.showTextAligned(canvas, Element.ALIGN_LEFT, phrase20, 356, 694, 0);

    Phrase phrase21 = new Phrase(
            bundle.getString("customer_code").toUpperCase() + " " + bundle.getString("customer").toUpperCase(),
            headerFont);
    Phrase phrase22 = new Phrase(bundle.getString("pdf_partita_iva").toUpperCase(), headerFont);
    Phrase phrase23 = new Phrase(bundle.getString("pdf_agent").toUpperCase(), headerFont);
    Phrase phrase24 = new Phrase(bundle.getString("pdf_number_receipt").toUpperCase(), headerFont);
    Phrase phrase25 = new Phrase(
            bundle.getString("receipt_date").toUpperCase() + " " + bundle.getString("receipt").toUpperCase(),
            headerFont);
    Phrase phrase26 = new Phrase(bundle.getString("pdf_number_page").toUpperCase(), headerFont);
    ColumnText.showTextAligned(canvas, Element.ALIGN_LEFT, phrase21, 24, 540, 0);
    ColumnText.showTextAligned(canvas, Element.ALIGN_LEFT, phrase22, 100, 540, 0);
    ColumnText.showTextAligned(canvas, Element.ALIGN_LEFT, phrase23, 176, 540, 0);
    ColumnText.showTextAligned(canvas, Element.ALIGN_LEFT, phrase24, 390, 540, 0);
    ColumnText.showTextAligned(canvas, Element.ALIGN_LEFT, phrase25, 466, 540, 0);
    ColumnText.showTextAligned(canvas, Element.ALIGN_LEFT, phrase26, 542, 540, 0);

    Phrase phrase27 = new Phrase("aaqaqaq", normalFont);
    Phrase phrase28 = new Phrase("cddcddcd", normalFont);
    Phrase phrase29 = new Phrase("cnjcndkd", normalFont);
    Phrase phrase30 = new Phrase(receipt.getCodeReceipt() + "", normalFont);
    Phrase phrase31 = new Phrase(receipt.getDate(), normalFont);
    Phrase phrase32 = new Phrase("tgsb", normalFont);
    ColumnText.showTextAligned(canvas, Element.ALIGN_LEFT, phrase27, 36, 530, 0);
    ColumnText.showTextAligned(canvas, Element.ALIGN_LEFT, phrase28, 106, 530, 0);
    ColumnText.showTextAligned(canvas, Element.ALIGN_LEFT, phrase29, 176, 530, 0);
    ColumnText.showTextAligned(canvas, Element.ALIGN_LEFT, phrase30, 396, 530, 0);
    ColumnText.showTextAligned(canvas, Element.ALIGN_LEFT, phrase31, 470, 530, 0);
    ColumnText.showTextAligned(canvas, Element.ALIGN_LEFT, phrase32, 546, 530, 0);

    Phrase phrase33 = new Phrase("aaqaqaq", headerFont);
    Phrase phrase34 = new Phrase("cddcddcd", headerFont);
    ColumnText.showTextAligned(canvas, Element.ALIGN_LEFT, phrase33, 24, 513, 0);
    ColumnText.showTextAligned(canvas, Element.ALIGN_LEFT, phrase34, 264, 513, 0);

    Phrase phrase35 = new Phrase("cnjcndkd", normalFont);
    Phrase phrase36 = new Phrase("dddedreqq", normalFont);
    ColumnText.showTextAligned(canvas, Element.ALIGN_LEFT, phrase35, 36, 503, 0);
    ColumnText.showTextAligned(canvas, Element.ALIGN_LEFT, phrase36, 276, 503, 0);

    Phrase phrase37 = new Phrase(bundle.getString("article_code").toUpperCase(), headerFont);
    Phrase phrase38 = new Phrase(bundle.getString("article_description").toUpperCase(), headerFont);
    Phrase phrase39 = new Phrase(bundle.getString("article_um").toUpperCase(), headerFont);
    Phrase phrase40 = new Phrase(bundle.getString("pdf_number_articles").toUpperCase(), headerFont);
    Phrase phrase41 = new Phrase(bundle.getString("article_prize").toUpperCase(), headerFont);
    Phrase phrase42 = new Phrase(bundle.getString("pdf_reduction").toUpperCase(), headerFont);
    Phrase phrase43 = new Phrase(bundle.getString("pdf_amount").toUpperCase(), headerFont);
    Phrase phrase44 = new Phrase(bundle.getString("pdf_iva").toUpperCase(), headerFont);
    ColumnText.showTextAligned(canvas, Element.ALIGN_CENTER, phrase37, 47, 480, 0);
    ColumnText.showTextAligned(canvas, Element.ALIGN_CENTER, phrase38, 126, 480, 0);
    ColumnText.showTextAligned(canvas, Element.ALIGN_CENTER, phrase39, 286, 480, 0);
    ColumnText.showTextAligned(canvas, Element.ALIGN_CENTER, phrase40, 324, 480, 0);
    ColumnText.showTextAligned(canvas, Element.ALIGN_CENTER, phrase41, 373, 480, 0);
    ColumnText.showTextAligned(canvas, Element.ALIGN_CENTER, phrase42, 440, 480, 0);
    ColumnText.showTextAligned(canvas, Element.ALIGN_CENTER, phrase43, 488, 480, 0);
    ColumnText.showTextAligned(canvas, Element.ALIGN_CENTER, phrase44, 552, 480, 0);

    Phrase phrase45 = null;
    Phrase phrase46 = null;
    Phrase phrase47 = null;
    Phrase phrase48 = null;
    Phrase phrase49 = null;
    Phrase phrase50 = null;
    Phrase phrase51 = null;
    Phrase phrase52 = null;

    int i = 0;
    for (i = 0; i < 70; i = i + 15) {
        phrase45 = new Phrase("dgbsbb", normalFont);
        phrase46 = new Phrase("323232", normalFont);
        phrase47 = new Phrase("bbg", normalFont);
        phrase48 = new Phrase("wefwe", normalFont);
        phrase49 = new Phrase("ewrew", normalFont);
        phrase50 = new Phrase("ewr5", normalFont);
        phrase51 = new Phrase("dsadasd", normalFont);
        phrase52 = new Phrase("ds", normalFont);
        ColumnText.showTextAligned(canvas, Element.ALIGN_LEFT, phrase45, 59, 460 - i, 0);
        ColumnText.showTextAligned(canvas, Element.ALIGN_LEFT, phrase46, 126, 460 - i, 0);
        ColumnText.showTextAligned(canvas, Element.ALIGN_LEFT, phrase47, 280, 460 - i, 0);
        ColumnText.showTextAligned(canvas, Element.ALIGN_LEFT, phrase48, 306, 460 - i, 0);
        ColumnText.showTextAligned(canvas, Element.ALIGN_LEFT, phrase49, 368, 460 - i, 0);
        ColumnText.showTextAligned(canvas, Element.ALIGN_LEFT, phrase50, 436, 460 - i, 0);
        ColumnText.showTextAligned(canvas, Element.ALIGN_LEFT, phrase51, 480, 460 - i, 0);
        ColumnText.showTextAligned(canvas, Element.ALIGN_LEFT, phrase52, 556, 460 - i, 0);
    }

    int j = 298;
    if (i - 298 < 0)
        i = 298;
    else {
        j = i;
        i = 460 - i;
    }

    Phrase phrase81 = new Phrase(receipt.getCause(), normalFont);
    Phrase phrase82 = new Phrase(receipt.getDescription(), normalFont);
    ColumnText.showTextAligned(canvas, Element.ALIGN_LEFT, phrase81, 59, i, 0);
    ColumnText.showTextAligned(canvas, Element.ALIGN_LEFT, phrase82, 326, i, 0);

    Phrase phrase53 = new Phrase(bundle.getString("pdf_total_goods").toUpperCase(), headerFont);
    Phrase phrase54 = new Phrase(bundle.getString("pdf_reduction").toUpperCase(), headerFont);
    Phrase phrase55 = new Phrase(bundle.getString("pdf_total_net").toUpperCase(), headerFont);
    ColumnText.showTextAligned(canvas, Element.ALIGN_LEFT, phrase53, 26, i - 30, 0);
    ColumnText.showTextAligned(canvas, Element.ALIGN_LEFT, phrase54, 104, i - 30, 0);
    ColumnText.showTextAligned(canvas, Element.ALIGN_LEFT, phrase55, 182, i - 30, 0);

    Phrase phrase56 = new Phrase("opoppp", normalFont);
    Phrase phrase57 = new Phrase("2ws", normalFont);
    Phrase phrase58 = new Phrase("78900", normalFont);
    ColumnText.showTextAligned(canvas, Element.ALIGN_RIGHT, phrase56, 96, i - 50, 0);
    ColumnText.showTextAligned(canvas, Element.ALIGN_RIGHT, phrase57, 176, i - 50, 0);
    ColumnText.showTextAligned(canvas, Element.ALIGN_RIGHT, phrase58, 252, i - 50, 0);

    Phrase phrase59 = new Phrase(bundle.getString("pdf_expiries").toUpperCase(), headerFont);
    ColumnText.showTextAligned(canvas, Element.ALIGN_LEFT, phrase59, 36, i - 70, 0);

    Phrase phrase60 = new Phrase("78900", normalFont);
    Phrase phrase61 = new Phrase("opoppp", normalFont);
    Phrase phrase62 = new Phrase("2ws", normalFont);
    ColumnText.showTextAligned(canvas, Element.ALIGN_RIGHT, phrase60, 166, i - 90, 0);
    ColumnText.showTextAligned(canvas, Element.ALIGN_RIGHT, phrase61, 166, i - 110, 0);
    ColumnText.showTextAligned(canvas, Element.ALIGN_RIGHT, phrase62, 166, i - 130, 0);

    Phrase phrase63 = new Phrase("78900", normalFont);
    Phrase phrase64 = new Phrase("opoppp", normalFont);
    Phrase phrase65 = new Phrase("2ws", normalFont);
    ColumnText.showTextAligned(canvas, Element.ALIGN_RIGHT, phrase63, 256, i - 90, 0);
    ColumnText.showTextAligned(canvas, Element.ALIGN_RIGHT, phrase64, 256, i - 110, 0);
    ColumnText.showTextAligned(canvas, Element.ALIGN_RIGHT, phrase65, 256, i - 130, 0);

    Phrase phrase66 = new Phrase(bundle.getString("pdf_transport").toUpperCase(), headerFont);
    Phrase phrase67 = new Phrase(bundle.getString("pdf_caching").toUpperCase(), headerFont);
    Phrase phrase68 = new Phrase(bundle.getString("pdf_various_costs").toUpperCase(), headerFont);
    Phrase phrase69 = new Phrase(bundle.getString("pdf_stamps").toUpperCase(), headerFont);
    ColumnText.showTextAligned(canvas, Element.ALIGN_LEFT, phrase66, 260, i - 30, 0);
    ColumnText.showTextAligned(canvas, Element.ALIGN_LEFT, phrase67, 340, i - 30, 0);
    ColumnText.showTextAligned(canvas, Element.ALIGN_LEFT, phrase68, 418, i - 30, 0);
    ColumnText.showTextAligned(canvas, Element.ALIGN_LEFT, phrase69, 496, i - 30, 0);

    Phrase phrase70 = new Phrase("2ws", normalFont);
    Phrase phrase71 = new Phrase("78900", normalFont);
    Phrase phrase72 = new Phrase("opoppp", normalFont);
    Phrase phrase73 = new Phrase("2ws", normalFont);
    ColumnText.showTextAligned(canvas, Element.ALIGN_RIGHT, phrase70, 300, i - 50, 0);
    ColumnText.showTextAligned(canvas, Element.ALIGN_RIGHT, phrase71, 390, i - 50, 0);
    ColumnText.showTextAligned(canvas, Element.ALIGN_RIGHT, phrase72, 468, i - 50, 0);
    ColumnText.showTextAligned(canvas, Element.ALIGN_RIGHT, phrase73, 546, i - 50, 0);

    Phrase phrase74 = new Phrase(bundle.getString("article_imponible").toUpperCase(), headerFont);
    Phrase phrase75 = new Phrase(bundle.getString("pdf_tax").toUpperCase(), headerFont);
    Phrase phrase76 = new Phrase(bundle.getString("pdf_total_receipt").toUpperCase(), headerFont);
    ColumnText.showTextAligned(canvas, Element.ALIGN_LEFT, phrase74, 260, i - 70, 0);
    ColumnText.showTextAligned(canvas, Element.ALIGN_LEFT, phrase75, 352, i - 70, 0);
    ColumnText.showTextAligned(canvas, Element.ALIGN_LEFT, phrase76, 484, i - 70, 0);

    Phrase phrase77 = new Phrase("2ws", normalFont);
    Phrase phrase78 = new Phrase("78900", normalFont);
    Phrase phrase79 = new Phrase("opoppp", normalFont);
    Phrase phrase80 = new Phrase("2ws", normalFont);
    ColumnText.showTextAligned(canvas, Element.ALIGN_RIGHT, phrase77, 310, i - 90, 0);
    ColumnText.showTextAligned(canvas, Element.ALIGN_LEFT, phrase78, 352, i - 90, 0);
    ColumnText.showTextAligned(canvas, Element.ALIGN_RIGHT, phrase79, 450, i - 90, 0);
    ColumnText.showTextAligned(canvas, Element.ALIGN_RIGHT, phrase80, 536, i - 110, 0);

    PdfPTable table = new PdfPTable(1);
    table.getDefaultCell().setPadding(50);
    table.setWidthPercentage(105);
    PdfPCell cell = new PdfPCell();
    cell.setPadding(127);
    table.addCell(cell);
    document.add(table);

    table = new PdfPTable(6);
    table.getDefaultCell().setPadding(5);
    table.setWidthPercentage(105);
    table.setWidths(new float[] { 7, 7, 20, 7, 7, 3 });
    cell = new PdfPCell();
    cell.setPadding(14);
    table.addCell(cell);
    table.addCell(cell);
    table.addCell(cell);
    table.addCell(cell);
    table.addCell(cell);
    table.addCell(cell);
    document.add(table);

    table = new PdfPTable(2);
    table.getDefaultCell().setPadding(5);
    table.setWidthPercentage(105);
    table.setWidths(new float[] { 15.5f, 20 });
    cell = new PdfPCell();
    cell.setPadding(14);
    table.addCell(cell);
    table.addCell(cell);
    document.add(table);

    table = new PdfPTable(1);
    table.getDefaultCell().setPadding(50);
    table.setWidthPercentage(105);
    cell = new PdfPCell();
    cell.setPadding(3);
    table.addCell(cell);
    document.add(table);

    table = new PdfPTable(7);
    table.getDefaultCell().setPadding(100);
    table.setWidths(new float[] { 23.5f, 2, 5, 6, 4, 7, 3 });
    table.setWidthPercentage(105);
    cell = new PdfPCell();
    cell.setPadding(j * 8 - 2279);
    table.addCell(cell);
    table.addCell(cell);
    table.addCell(cell);
    table.addCell(cell);
    table.addCell(cell);
    table.addCell(cell);
    table.addCell(cell);
    document.add(table);

    table = new PdfPTable(7);
    table.getDefaultCell().setPadding(5);
    table.setWidthPercentage(105);
    cell = new PdfPCell();
    cell.setPadding(17);
    table.addCell(cell);
    table.addCell(cell);
    table.addCell(cell);
    table.addCell(cell);
    table.addCell(cell);
    table.addCell(cell);
    table.addCell(cell);
    document.add(table);

    table = new PdfPTable(4);
    table.getDefaultCell().setPadding(5);
    table.setWidths(new float[] { 10.5f, 4, 6, 4 });
    table.setWidthPercentage(105);
    cell = new PdfPCell();
    cell.setPadding(48);
    table.addCell(cell);
    table.addCell(cell);
    table.addCell(cell);
    table.addCell(cell);
    document.add(table);

    document.close();

    HttpServletResponse response = (HttpServletResponse) extCtx.getResponse();
    response.setContentType("application/pdf");
    response.addHeader("Content-disposition",
            "attachment; filename=\"" + bundle.getString("receipt") + "-" + receipt.getDate() + ".pdf\"");

    ServletOutputStream os = response.getOutputStream();
    os.write(bytesOS.toByteArray());
    os.flush();
    os.close();

    facesContext.responseComplete();
}

From source file:it.vige.magazzino.pdf.Format2DocumentReceipt.java

License:Apache License

@Model
public void build(Receipt receipt) throws Exception {
    ResourceBundle bundle = ResourceBundle.getBundle("messages");

    Document document = new Document();
    ByteArrayOutputStream bytesOS = new ByteArrayOutputStream();
    PdfWriter writer = PdfWriter.getInstance(document, bytesOS);

    document.open();/* ww w. jav  a2s . co m*/

    Font normalFont = new Font();

    PdfContentByte canvas = writer.getDirectContentUnder();
    List<Data> imagesJar = receipt.getJar().getFiles();

    if (imagesJar != null && imagesJar.size() > 0) {
        Image image1 = Image.getInstance(imagesJar.get(0).getData());
        image1.setAbsolutePosition(36, 742);
        image1.scalePercent(60);
        document.add(image1);
    }

    Phrase phrase1 = new Phrase(bundle.getString("pdf_number_receipt"), normalFont);
    Phrase phrase2 = new Phrase(receipt.getCodeReceipt() + "", normalFont);
    Phrase phrase3 = new Phrase(bundle.getString("receipt_date"), normalFont);
    Phrase phrase4 = new Phrase(receipt.getDate(), normalFont);
    Phrase phrase5 = new Phrase(receipt.getCause(), normalFont);
    Phrase phrase6 = new Phrase(receipt.getDescription(), normalFont);
    Phrase phrase7 = new Phrase(bundle.getString("customer_code") + " " + bundle.getString("customer"),
            normalFont);
    Phrase phrase8 = new Phrase("prova 4: prova 4", normalFont);
    ColumnText.showTextAligned(canvas, Element.ALIGN_LEFT, phrase1, 286, 797, 0);
    ColumnText.showTextAligned(canvas, Element.ALIGN_LEFT, phrase2, 386, 797, 0);
    ColumnText.showTextAligned(canvas, Element.ALIGN_LEFT, phrase3, 286, 777, 0);
    ColumnText.showTextAligned(canvas, Element.ALIGN_LEFT, phrase4, 386, 777, 0);
    ColumnText.showTextAligned(canvas, Element.ALIGN_LEFT, phrase5, 286, 757, 0);
    ColumnText.showTextAligned(canvas, Element.ALIGN_LEFT, phrase6, 386, 757, 0);
    ColumnText.showTextAligned(canvas, Element.ALIGN_LEFT, phrase7, 286, 737, 0);
    ColumnText.showTextAligned(canvas, Element.ALIGN_LEFT, phrase8, 386, 737, 0);

    Phrase phrase9 = new Phrase("prova 4: prova 4", normalFont);
    Phrase phrase10 = new Phrase("prova 2: prova 2", normalFont);
    Phrase phrase11 = new Phrase("prova 3: prova 3", normalFont);
    Phrase phrase12 = new Phrase("prova 4: prova 4", normalFont);
    Phrase phrase13 = new Phrase(bundle.getString("pdf_tel"), normalFont);
    Phrase phrase14 = new Phrase("prova 2: prova 2", normalFont);
    Phrase phrase15 = new Phrase(bundle.getString("pdf_partita_iva_short"), normalFont);
    Phrase phrase16 = new Phrase("prova 4: prova 4", normalFont);
    ColumnText.showTextAligned(canvas, Element.ALIGN_LEFT, phrase9, 36, 718, 0);
    ColumnText.showTextAligned(canvas, Element.ALIGN_LEFT, phrase10, 136, 718, 0);
    ColumnText.showTextAligned(canvas, Element.ALIGN_LEFT, phrase11, 36, 698, 0);
    ColumnText.showTextAligned(canvas, Element.ALIGN_LEFT, phrase12, 136, 698, 0);
    ColumnText.showTextAligned(canvas, Element.ALIGN_LEFT, phrase13, 36, 678, 0);
    ColumnText.showTextAligned(canvas, Element.ALIGN_LEFT, phrase14, 136, 678, 0);
    ColumnText.showTextAligned(canvas, Element.ALIGN_LEFT, phrase15, 36, 658, 0);
    ColumnText.showTextAligned(canvas, Element.ALIGN_LEFT, phrase16, 136, 658, 0);

    Phrase phrase17 = new Phrase("Ditta", normalFont);
    Phrase phrase18 = new Phrase("prova 2: prova 2", normalFont);
    Phrase phrase19 = new Phrase("prova 3: prova 3", normalFont);
    Phrase phrase20 = new Phrase("prova 4: prova 4", normalFont);
    Phrase phrase21 = new Phrase("prova 4: prova 4", normalFont);
    Phrase phrase22 = new Phrase(bundle.getString("pdf_partita_iva_short"), normalFont);
    Phrase phrase23 = new Phrase("prova 2: ", normalFont);
    Phrase phrase24 = new Phrase(bundle.getString("pdf_cod_fisc"), normalFont);
    Phrase phrase25 = new Phrase("prova 2: ", normalFont);
    ColumnText.showTextAligned(canvas, Element.ALIGN_LEFT, phrase17, 236, 736, 0);
    ColumnText.showTextAligned(canvas, Element.ALIGN_LEFT, phrase18, 236, 708, 0);
    ColumnText.showTextAligned(canvas, Element.ALIGN_LEFT, phrase19, 236, 688, 0);
    ColumnText.showTextAligned(canvas, Element.ALIGN_LEFT, phrase20, 236, 668, 0);
    ColumnText.showTextAligned(canvas, Element.ALIGN_LEFT, phrase21, 386, 668, 0);
    ColumnText.showTextAligned(canvas, Element.ALIGN_LEFT, phrase22, 236, 648, 0);
    ColumnText.showTextAligned(canvas, Element.ALIGN_LEFT, phrase23, 286, 648, 0);
    ColumnText.showTextAligned(canvas, Element.ALIGN_LEFT, phrase24, 356, 648, 0);
    ColumnText.showTextAligned(canvas, Element.ALIGN_LEFT, phrase25, 416, 648, 0);

    Phrase phrase26 = new Phrase(bundle.getString("article_code"), normalFont);
    Phrase phrase27 = new Phrase(bundle.getString("article_description"), normalFont);
    Phrase phrase28 = new Phrase(bundle.getString("pdf_number_articles"), normalFont);
    Phrase phrase29 = new Phrase(bundle.getString("article_prize"), normalFont);
    Phrase phrase30 = new Phrase(bundle.getString("pdf_reduction"), normalFont);
    Phrase phrase31 = new Phrase(bundle.getString("pdf_amount"), normalFont);
    Phrase phrase32 = new Phrase(bundle.getString("pdf_iva"), normalFont);
    ColumnText.showTextAligned(canvas, Element.ALIGN_CENTER, phrase26, 59, 618, 0);
    ColumnText.showTextAligned(canvas, Element.ALIGN_CENTER, phrase27, 146, 618, 0);
    ColumnText.showTextAligned(canvas, Element.ALIGN_CENTER, phrase28, 208, 618, 0);
    ColumnText.showTextAligned(canvas, Element.ALIGN_CENTER, phrase29, 280, 618, 0);
    ColumnText.showTextAligned(canvas, Element.ALIGN_CENTER, phrase30, 353, 618, 0);
    ColumnText.showTextAligned(canvas, Element.ALIGN_CENTER, phrase31, 422, 618, 0);
    ColumnText.showTextAligned(canvas, Element.ALIGN_CENTER, phrase32, 498, 618, 0);

    Phrase phrase33 = null;
    Phrase phrase34 = null;
    Phrase phrase35 = null;
    Phrase phrase36 = null;
    Phrase phrase37 = null;
    Phrase phrase38 = null;
    Phrase phrase39 = null;

    int i = 0;
    for (i = 0; i < 70; i = i + 15) {
        phrase33 = new Phrase("dsadasd", normalFont);
        phrase34 = new Phrase("dgbsbb", normalFont);
        phrase35 = new Phrase("323232", normalFont);
        phrase36 = new Phrase("bbgdbdfbdb", normalFont);
        phrase37 = new Phrase("wefwew", normalFont);
        phrase38 = new Phrase("ewrew", normalFont);
        phrase39 = new Phrase("ewr5", normalFont);
        ColumnText.showTextAligned(canvas, Element.ALIGN_LEFT, phrase33, 59, 598 - i, 0);
        ColumnText.showTextAligned(canvas, Element.ALIGN_LEFT, phrase34, 136, 598 - i, 0);
        ColumnText.showTextAligned(canvas, Element.ALIGN_LEFT, phrase35, 196, 598 - i, 0);
        ColumnText.showTextAligned(canvas, Element.ALIGN_LEFT, phrase36, 266, 598 - i, 0);
        ColumnText.showTextAligned(canvas, Element.ALIGN_LEFT, phrase37, 351, 598 - i, 0);
        ColumnText.showTextAligned(canvas, Element.ALIGN_LEFT, phrase38, 416, 598 - i, 0);
        ColumnText.showTextAligned(canvas, Element.ALIGN_LEFT, phrase39, 496, 598 - i, 0);
    }
    int j = 298;
    if (i - 298 < 0)
        i = 298;
    else {
        j = i;
        i = 588 - i;
    }
    Phrase phrase40 = new Phrase(bundle.getString("pdf_references").toUpperCase(), normalFont);
    Phrase phrase41 = new Phrase(bundle.getString("pdf_delivery").toUpperCase(), normalFont);
    Phrase phrase42 = new Phrase(bundle.getString("pdf_payments").toUpperCase(), normalFont);
    ColumnText.showTextAligned(canvas, Element.ALIGN_RIGHT, phrase40, 105, i, 0);
    ColumnText.showTextAligned(canvas, Element.ALIGN_RIGHT, phrase41, 206, i, 0);
    ColumnText.showTextAligned(canvas, Element.ALIGN_RIGHT, phrase42, 316, i, 0);

    Phrase phrase43 = new Phrase("opoppp", normalFont);
    Phrase phrase44 = new Phrase("2ws", normalFont);
    Phrase phrase45 = new Phrase("78900", normalFont);
    ColumnText.showTextAligned(canvas, Element.ALIGN_CENTER, phrase43, 59, i - 20, 0);
    ColumnText.showTextAligned(canvas, Element.ALIGN_CENTER, phrase44, 186, i - 20, 0);
    ColumnText.showTextAligned(canvas, Element.ALIGN_CENTER, phrase45, 276, i - 20, 0);

    Phrase phrase46 = new Phrase(bundle.getString("pdf_sign_producer").toUpperCase(), normalFont);
    Phrase phrase47 = new Phrase(bundle.getString("pdf_sign_receiver").toUpperCase(), normalFont);
    ColumnText.showTextAligned(canvas, Element.ALIGN_RIGHT, phrase46, 154, i - 40, 0);
    ColumnText.showTextAligned(canvas, Element.ALIGN_RIGHT, phrase47, 321, i - 40, 0);

    Phrase phrase48 = new Phrase(bundle.getString("article_imponible"), normalFont);
    Phrase phrase49 = new Phrase("opoppp", normalFont);
    Phrase phrase50 = new Phrase(bundle.getString("pdf_tax"), normalFont);
    Phrase phrase51 = new Phrase("78900", normalFont);
    Phrase phrase52 = new Phrase(bundle.getString("pdf_total_receipt"), normalFont);
    Phrase phrase53 = new Phrase("2ws", normalFont);
    ColumnText.showTextAligned(canvas, Element.ALIGN_LEFT, phrase48, 356, i, 0);
    ColumnText.showTextAligned(canvas, Element.ALIGN_RIGHT, phrase49, 566, i, 0);
    ColumnText.showTextAligned(canvas, Element.ALIGN_LEFT, phrase50, 356, i - 25, 0);
    ColumnText.showTextAligned(canvas, Element.ALIGN_RIGHT, phrase51, 566, i - 25, 0);
    ColumnText.showTextAligned(canvas, Element.ALIGN_LEFT, phrase52, 356, i - 50, 0);
    ColumnText.showTextAligned(canvas, Element.ALIGN_RIGHT, phrase53, 566, i - 50, 0);

    PdfPTable table = new PdfPTable(4);
    table.getDefaultCell().setPadding(50);
    table.setWidthPercentage(105);
    table.setWidths(new float[] { 47, 18, 18, 17 });
    PdfPCell cell = new PdfPCell();
    cell.enableBorderSide(PdfPCell.RIGHT);
    cell.disableBorderSide(PdfPCell.LEFT);
    cell.disableBorderSide(PdfPCell.BOTTOM);
    cell.disableBorderSide(PdfPCell.TOP);
    cell.setPadding(10);
    table.addCell(cell);
    cell = new PdfPCell();
    cell.enableBorderSide(PdfPCell.LEFT);
    cell.enableBorderSide(PdfPCell.BOTTOM);
    cell.enableBorderSide(PdfPCell.TOP);
    cell.setPadding(10);
    table.addCell(cell);
    table.addCell(cell);
    cell = new PdfPCell();
    cell.disableBorderSide(PdfPCell.RIGHT);
    cell.disableBorderSide(PdfPCell.BOTTOM);
    cell.disableBorderSide(PdfPCell.TOP);
    cell.setPadding(10);
    table.addCell(cell);
    document.add(table);

    table = new PdfPTable(4);
    table.getDefaultCell().setPadding(50);
    table.setWidthPercentage(105);
    table.setWidths(new float[] { 47, 18, 18, 17 });
    cell = new PdfPCell();
    cell.enableBorderSide(PdfPCell.RIGHT);
    cell.disableBorderSide(PdfPCell.LEFT);
    cell.disableBorderSide(PdfPCell.BOTTOM);
    cell.disableBorderSide(PdfPCell.TOP);
    cell.setPadding(10);
    table.addCell(cell);
    cell = new PdfPCell();
    cell.enableBorderSide(PdfPCell.LEFT);
    cell.enableBorderSide(PdfPCell.BOTTOM);
    cell.enableBorderSide(PdfPCell.TOP);
    cell.setPadding(10);
    table.addCell(cell);
    table.addCell(cell);
    cell = new PdfPCell();
    cell.disableBorderSide(PdfPCell.RIGHT);
    cell.disableBorderSide(PdfPCell.BOTTOM);
    cell.disableBorderSide(PdfPCell.TOP);
    cell.setPadding(10);
    table.addCell(cell);
    document.add(table);

    table = new PdfPTable(4);
    table.getDefaultCell().setPadding(50);
    table.setWidthPercentage(105);
    table.setWidths(new float[] { 47, 18, 18, 17 });
    cell = new PdfPCell();
    cell.enableBorderSide(PdfPCell.RIGHT);
    cell.disableBorderSide(PdfPCell.LEFT);
    cell.disableBorderSide(PdfPCell.BOTTOM);
    cell.disableBorderSide(PdfPCell.TOP);
    cell.setPadding(10);
    table.addCell(cell);
    cell = new PdfPCell();
    cell.enableBorderSide(PdfPCell.LEFT);
    cell.enableBorderSide(PdfPCell.BOTTOM);
    cell.enableBorderSide(PdfPCell.TOP);
    cell.setPadding(10);
    table.addCell(cell);
    table.addCell(cell);
    cell = new PdfPCell();
    cell.disableBorderSide(PdfPCell.RIGHT);
    cell.disableBorderSide(PdfPCell.BOTTOM);
    cell.disableBorderSide(PdfPCell.TOP);
    cell.setPadding(10);
    table.addCell(cell);
    document.add(table);

    table = new PdfPTable(4);
    table.getDefaultCell().setPadding(50);
    table.setWidthPercentage(105);
    table.setWidths(new float[] { 47, 18, 18, 17 });
    cell = new PdfPCell();
    cell.enableBorderSide(PdfPCell.RIGHT);
    cell.disableBorderSide(PdfPCell.LEFT);
    cell.disableBorderSide(PdfPCell.BOTTOM);
    cell.disableBorderSide(PdfPCell.TOP);
    cell.setPadding(10);
    table.addCell(cell);
    cell = new PdfPCell();
    cell.enableBorderSide(PdfPCell.LEFT);
    cell.enableBorderSide(PdfPCell.BOTTOM);
    cell.enableBorderSide(PdfPCell.TOP);
    cell.setPadding(10);
    table.addCell(cell);
    table.addCell(cell);
    cell = new PdfPCell();
    cell.disableBorderSide(PdfPCell.RIGHT);
    cell.disableBorderSide(PdfPCell.BOTTOM);
    cell.disableBorderSide(PdfPCell.TOP);
    cell.setPadding(10);
    table.addCell(cell);
    document.add(table);

    table = new PdfPTable(1);
    table.getDefaultCell().setPadding(50);
    table.setWidthPercentage(105);
    cell = new PdfPCell();
    cell.disableBorderSide(PdfPCell.RIGHT);
    cell.disableBorderSide(PdfPCell.LEFT);
    cell.disableBorderSide(PdfPCell.BOTTOM);
    cell.disableBorderSide(PdfPCell.TOP);
    cell.setPadding(3);
    table.addCell(cell);
    document.add(table);

    table = new PdfPTable(3);
    table.getDefaultCell().setPadding(50);
    table.setWidthPercentage(105);
    table.setWidths(new float[] { 38, 48, 14 });
    cell.disableBorderSide(PdfPCell.RIGHT);
    cell.disableBorderSide(PdfPCell.LEFT);
    cell.disableBorderSide(PdfPCell.BOTTOM);
    cell.disableBorderSide(PdfPCell.TOP);
    cell.setPadding(40);
    table.addCell(cell);
    cell.enableBorderSide(PdfPCell.RIGHT);
    cell.enableBorderSide(PdfPCell.LEFT);
    cell.enableBorderSide(PdfPCell.BOTTOM);
    cell.enableBorderSide(PdfPCell.TOP);
    table.addCell(cell);
    cell.disableBorderSide(PdfPCell.RIGHT);
    cell.disableBorderSide(PdfPCell.LEFT);
    cell.disableBorderSide(PdfPCell.BOTTOM);
    cell.disableBorderSide(PdfPCell.TOP);
    table.addCell(cell);
    document.add(table);

    table = new PdfPTable(1);
    table.getDefaultCell().setPadding(50);
    table.setWidthPercentage(105);
    cell = new PdfPCell();
    cell.disableBorderSide(PdfPCell.RIGHT);
    cell.disableBorderSide(PdfPCell.LEFT);
    cell.disableBorderSide(PdfPCell.BOTTOM);
    cell.disableBorderSide(PdfPCell.TOP);
    cell.setPadding(3);
    table.addCell(cell);
    document.add(table);

    table = new PdfPTable(7);
    table.getDefaultCell().setPadding(50);
    table.setWidthPercentage(105);
    table.setWidths(new float[] { 16, 12, 11, 17, 12, 16, 16 });
    cell = new PdfPCell();
    cell.enableBorderSide(PdfPCell.RIGHT);
    cell.enableBorderSide(PdfPCell.LEFT);
    cell.enableBorderSide(PdfPCell.BOTTOM);
    cell.enableBorderSide(PdfPCell.TOP);
    cell.setPadding(10);
    table.addCell(cell);
    table.addCell(cell);
    table.addCell(cell);
    table.addCell(cell);
    table.addCell(cell);
    table.addCell(cell);
    table.addCell(cell);
    document.add(table);

    table = new PdfPTable(7);
    table.getDefaultCell().setPadding(50);
    table.setWidthPercentage(105);
    table.setWidths(new float[] { 16, 12, 11, 17, 12, 16, 16 });
    cell = new PdfPCell();
    cell.enableBorderSide(PdfPCell.RIGHT);
    cell.enableBorderSide(PdfPCell.LEFT);
    cell.enableBorderSide(PdfPCell.BOTTOM);
    cell.enableBorderSide(PdfPCell.TOP);
    cell.setPadding(j * 8 - 2234);
    table.addCell(cell);
    table.addCell(cell);
    table.addCell(cell);
    table.addCell(cell);
    table.addCell(cell);
    table.addCell(cell);
    table.addCell(cell);
    document.add(table);

    table = new PdfPTable(5);
    table.getDefaultCell().setPadding(50);
    table.setWidthPercentage(105);
    table.setWidths(new float[] { 20, 20, 20, 20, 20 });
    cell = new PdfPCell();
    cell.setPadding(20);
    table.addCell(cell);
    table.addCell(cell);
    table.addCell(cell);
    cell.disableBorderSide(PdfPCell.BOTTOM);
    table.addCell(cell);
    table.addCell(cell);
    document.add(table);

    table = new PdfPTable(4);
    table.getDefaultCell().setPadding(50);
    table.setWidthPercentage(105);
    table.setWidths(new float[] { 30, 30, 20, 20 });
    cell = new PdfPCell();
    cell.setPadding(20);
    table.addCell(cell);
    table.addCell(cell);
    cell.disableBorderSide(PdfPCell.TOP);
    table.addCell(cell);
    table.addCell(cell);
    document.add(table);

    document.close();

    HttpServletResponse response = (HttpServletResponse) extCtx.getResponse();
    response.setContentType("application/pdf");
    response.addHeader("Content-disposition",
            "attachment; filename=\"" + bundle.getString("receipt") + "-" + receipt.getDate() + ".pdf\"");

    ServletOutputStream os = response.getOutputStream();
    os.write(bytesOS.toByteArray());
    os.flush();
    os.close();

    facesContext.responseComplete();
}

From source file:Login.ventas.fproyectos.java

public void fondos(Document documento, PdfContentByte canvas) {
    try {/*  ww w .  ja v a2s  .  c om*/
        Image imghead = Image.getInstance(usuario.getDireccion() + "/plantilla.jpg");
        imghead.setAbsolutePosition(0, 0);
        imghead.setAlignment(Image.ALIGN_CENTER);
        float scaler = ((documento.getPageSize().getWidth() - documento.leftMargin() - documento.rightMargin())
                / imghead.getWidth()) * 100;
        imghead.scalePercent(scaler);
        PdfTemplate tp = canvas.createTemplate(PageSize.A4.getWidth(), PageSize.A4.getHeight()); //el rea destinada para el encabezado
        tp.addImage(imghead);
        x = (int) imghead.getWidth();
        y = (int) imghead.getHeight();
        canvas.addTemplate(tp, 0, 0);//posicin del tmplate derecha y abajo
    } catch (IOException | DocumentException io) {

    }
}

From source file:me.champeau.deck2pdf.Browser.java

License:Apache License

public void doExport(final Profile profile, final int width, final int height) {
    final PauseTransition pt = new PauseTransition();
    pt.setDuration(Duration.millis(profile.getPause()));
    final AtomicInteger cpt = new AtomicInteger();
    final Document document = new Document(new Rectangle(width, height), 0, 0, 0, 0);
    try {/*from w ww.ja  v  a2s . c om*/
        PdfWriter.getInstance(document, new FileOutputStream(exportFile));
    } catch (DocumentException | FileNotFoundException e) {
        handleError(e);
        return;
    }
    document.open();
    profile.setDocument(document);
    pt.setOnFinished(new EventHandler<ActionEvent>() {
        @Override
        public void handle(ActionEvent actionEvent) {
            WritableImage image = browser.snapshot(null, null);
            BufferedImage bufferedImage = SwingFXUtils.fromFXImage(image, null);
            double scaler = ((document.getPageSize().getWidth() - document.leftMargin()
                    - document.rightMargin()) / image.getWidth()) * 100;

            try {
                com.itextpdf.text.Image image2 = com.itextpdf.text.Image.getInstance(bufferedImage, null);
                image2.scalePercent((float) scaler);
                document.add(image2);
                document.newPage();
                int current = cpt.incrementAndGet();
                int nbSlides = profile.getSlideCount();
                System.out.println("Exported slide " + current + (nbSlides > 0 ? "/" + nbSlides : ""));
                if (!profile.isLastSlide(current)) {
                    profile.nextSlide();
                    pt.setDuration(Duration.millis(profile.getPause()));
                    pt.play();
                } else {
                    profile.finish();
                    document.close();
                    System.out.println("Export complete.");
                    Platform.exit();
                }
            } catch (IOException | DocumentException e) {
                handleError(e);
            }
        }
    });
    webEngine.getLoadWorker().stateProperty().addListener(new ChangeListener<Worker.State>() {
        public void changed(ObservableValue ov, Worker.State oldState, Worker.State newState) {
            if (newState == Worker.State.SUCCEEDED) {
                profile.setup();
                profile.ready(new Runnable() {
                    public void run() {
                        pt.play();
                    }
                });
            }
        }
    });
}

From source file:me.champeau.deck2pdf.writer.PdfSlideWriter.java

License:Apache License

@Override
public void writeSlide(final BufferedImage image, final int numSlides, final int current)
        throws SlideExportException {
    try {/* w  w w  .ja  v a  2s.  com*/
        com.itextpdf.text.Image image2 = com.itextpdf.text.Image.getInstance(image, null);
        double scaler = ((document.getPageSize().getWidth() - document.leftMargin() - document.rightMargin())
                / image.getWidth()) * 100;
        image2.scalePercent((float) scaler);
        document.add(image2);
        document.newPage();
    } catch (IOException | DocumentException e) {
        throw new SlideExportException(e);
    }
}

From source file:Modelo.DAO.InformeDAO.java

public String generaPDF(String Diagnostico, String Tratamiento, String Datos, Integer idPaciente,
        Integer idPersona, Paciente paciente) throws FileNotFoundException, DocumentException, IOException {

    Calendar cal = Calendar.getInstance();
    String time = new SimpleDateFormat("dd/MM/yyyy HH:mm:ss").format(cal.getTime());
    String timename = new SimpleDateFormat("yyyyMMddHHmm").format(cal.getTime());

    File file = new File("informe" + timename + ".pdf");
    FileOutputStream fileout = new FileOutputStream(file);
    Document document = new Document();
    PdfWriter writer;//from   w w  w.  ja v  a2  s .  c  o  m
    writer = PdfWriter.getInstance(document, fileout);

    Font fuente = new Font();
    Font fuente2 = new Font();
    Font fuente3 = new Font();

    // fuente.setColor(BaseColor.BLUE);
    fuente.setStyle(Font.UNDERLINE | Font.BOLDITALIC);
    fuente2.setStyle(Font.BOLD);
    fuente2.setSize(12);
    fuente3.setSize(20);
    fuente3.setStyle(Font.BOLD);

    document.open();
    document.add(new Paragraph("\n \n \n \n \n"));
    document.add(new Paragraph("Clnica Mdica INFTEL", fuente3));

    String imageUrl = "src/Imagen/logo.png";
    //  String imagen="src\Imagen\logo.png"; 
    Image image = Image.getInstance(imageUrl);
    image.setAbsolutePosition(300, 750);
    image.scalePercent(80f);
    document.add(image);

    document.add(new Paragraph(" "));
    document.add(new Paragraph("---------------------"));

    document.add(new Paragraph("DATOS DEL PACIENTE", fuente));
    document.add(new Paragraph(" "));
    document.add(
            new Paragraph("Apellidos y Nombre : " + paciente.getApellidos() + ", " + paciente.getNombre()));
    document.add(new Paragraph("NIF : " + paciente.getNif()));
    document.add(new Paragraph("NSS : " + paciente.getNumSS()));
    document.add(new Paragraph("Direccion : " + paciente.getDireccion()));
    document.add(new Paragraph("Telefono : " + paciente.getTelefono()));
    document.add(new Paragraph("Email : " + paciente.getEmail()));
    document.add(new Paragraph("ID Paciente : " + idPaciente));

    document.add(new Paragraph(" "));
    document.add(new Paragraph("---------------------"));
    document.add(new Paragraph(" "));

    document.add(new Paragraph("DATOS CL?NICOS", fuente));
    document.add(new Paragraph(" "));

    document.add(new Paragraph("Diagnstico : ", fuente2));
    document.add(new Paragraph(Diagnostico));
    document.add(new Paragraph(" "));

    document.add(new Paragraph("Tratamiento : ", fuente2));
    document.add(new Paragraph(Tratamiento));
    document.add(new Paragraph(" "));

    document.add(new Paragraph("Datos : ", fuente2));
    document.add(new Paragraph(Datos));
    document.add(new Paragraph(" "));

    absText(writer, time, 450, 50);

    document.close();

    File myFile = new File("informe" + timename + ".pdf");
    Desktop.getDesktop().open(myFile);

    return myFile.toString();

}

From source file:Modelo.DAO.RecetasDAO.java

public void generaPDF(String Indicaciones, String Medicamentos, Paciente paciente, Integer idPaciente)
        throws FileNotFoundException, DocumentException, IOException {

    Calendar cal = Calendar.getInstance();
    String time = new SimpleDateFormat("dd/MM/yyyy HH:mm:ss").format(cal.getTime());
    String timename = new SimpleDateFormat("yyyyMMddHHmm").format(cal.getTime());

    File file = new File("Receta" + timename + ".pdf");
    FileOutputStream fileout = new FileOutputStream(file);
    Document document = new Document();
    PdfWriter writer;/*  w  ww. java  2  s .  c o  m*/
    writer = PdfWriter.getInstance(document, fileout);

    Font fuente = new Font();
    Font fuente2 = new Font();

    // fuente.setColor(BaseColor.BLUE);
    fuente.setStyle(Font.BOLD | Font.UNDERLINE);
    fuente2.setStyle(Font.BOLD);
    fuente2.setSize(20);

    document.open();
    document.add(new Paragraph("\n \n \n \n \n"));
    document.add(new Paragraph("Clinica Mdica INFTEL", fuente2));

    String imageUrl = "src/Imagen/logo.png";

    Image image = Image.getInstance(imageUrl);
    image.setAbsolutePosition(300, 750);
    image.scalePercent(80f);
    document.add(image);

    document.add(new Paragraph(" "));
    document.add(new Paragraph("---------------------"));

    document.add(new Paragraph("DATOS DEL PACIENTE", fuente));
    document.add(new Paragraph(" "));
    document.add(
            new Paragraph("Apellidos y Nombre : " + paciente.getApellidos() + ", " + paciente.getNombre()));
    document.add(new Paragraph("NIF : " + paciente.getNif()));
    document.add(new Paragraph("NSS : " + paciente.getNumSS()));
    document.add(new Paragraph("Direccion : " + paciente.getDireccion()));
    document.add(new Paragraph("Telefono : " + paciente.getTelefono()));
    document.add(new Paragraph("Email : " + paciente.getEmail()));
    document.add(new Paragraph("ID Paciente : " + idPaciente));

    document.add(new Paragraph(" "));
    document.add(new Paragraph("---------------------"));
    document.add(new Paragraph(" "));

    document.add(new Paragraph("DATOS CL?NICOS", fuente));
    document.add(new Paragraph(" "));

    document.add(new Paragraph("Diagnstico : "));
    document.add(new Paragraph(Indicaciones));
    document.add(new Paragraph(" "));

    document.add(new Paragraph("Tratamiento : "));
    document.add(new Paragraph(Medicamentos));
    document.add(new Paragraph(" "));

    document.add(new Paragraph(" "));

    absText(writer, time, 450, 50);

    document.close();
}