Example usage for com.lowagie.text.pdf MultiColumnText addRegularColumns

List of usage examples for com.lowagie.text.pdf MultiColumnText addRegularColumns

Introduction

In this page you can find the example usage for com.lowagie.text.pdf MultiColumnText addRegularColumns.

Prototype

public void addRegularColumns(float left, float right, float gutterWidth, int numColumns) 

Source Link

Document

Add the specified number of evenly spaced rectangular columns.

Usage

From source file:com.aryjr.nheengatu.pdf.PDFDocument.java

License:Open Source License

public void generateFile(final OutputStream out) throws IOException {
    final Document document;
    if (styleSheet == null || styleSheet.getStyles() == null || !styleSheet.getStyles().containsKey("@page")) {
        document = new Document(PageSize.A4);
        document.setMargins(3.0f * PDFDocument.CM_UNIT, 2.0f * PDFDocument.CM_UNIT, 1.0f * PDFDocument.CM_UNIT,
                2.0f * PDFDocument.CM_UNIT);
        System.out.println("Processamento: terminou setMargins");
    } else {//from   w w  w  .  ja v  a2  s  . c o m
        Style style = ((Style) (styleSheet.getStyles().get("@page")));
        if ("landscape".equals(style.getPropertyValue("size"))) {
            document = new Document(PageSize.A4.rotate());
        } else {
            document = new Document(PageSize.A4);
        }
        String s = style.getPropertyValue("margin-left");
        Float f = styleMeasure(s, "3cm");
        document.setMargins(styleMeasure(style.getPropertyValue("margin-left"), "3cm"),
                styleMeasure(style.getPropertyValue("margin-right"), "2cm"),
                styleMeasure(style.getPropertyValue("margin-top"), "1cm"),
                styleMeasure(style.getPropertyValue("margin-bottom"), "2cm"));
        System.out.println("Processamento: terminou setMargins do else");
    }
    try {
        final PdfWriter writer = PdfWriter.getInstance(document, out);
        writer.setPageEvent(new PDFPageBreak(writer, document, headFirstPage, footFirstPage, head, foot));
        document.open();
        final MultiColumnText mct = new MultiColumnText();
        // set up 3 even columns with 10pt space between
        mct.addRegularColumns(document.left(), document.right(), 0f, 1);

        System.out.println("Processamento: prestes a extract visible components");

        // Extracting the document content
        extractVisibleComponents(body, document, mct, null, null);

        document.add(mct);
        document.close();
    } catch (final DocumentException de) {
        System.err.println(de.getMessage());
    }
}

From source file:com.preparatic.archivos.PdfGenerator.java

License:Apache License

/**
  * Genera un pdf para las preguntas y otro para las soluciones.
  * //from  ww  w .  ja  va2 s.c  o  m
  * @throws Exception
  */
 public String guardarPDF() throws Exception {

     // Abrir documentos
     docpregs = new Document();
     docsols = new Document();

     String pregsFilename = FactoriaArchivo.pdfTestFilename(test.getTipoTest(), test.getIdBloqueTematicaAnho(),
             test.getIdTest());
     PdfWriter writerPregs = PdfWriter.getInstance(docpregs,
             FactoriaArchivo.pdfTest(test.getTipoTest(), test.getIdBloqueTematicaAnho(), test.getIdTest()));
     TestFooter footerPregs = new TestFooter(test.getTitulo()); //mod_AZ_2018-02-04
     writerPregs.setPageEvent(footerPregs);

     PdfWriter.getInstance(docsols,
             FactoriaArchivo.pdfSol(test.getTipoTest(), test.getIdBloqueTematicaAnho(), test.getIdTest()));

     docpregs.open();

     docsols.open();
     docpregs.setMargins(80, 80, 72, 36);
     docsols.setMargins(80, 80, 36, 36);

     // Aadir logo
     Image gif = Image.getInstance(ConfigProperties.getProperty("files.rootDir") + "/images/logo-alpha.png"); //mod_AZE_2018-02-04 (logo con fondo blanco)

     gif.setAlignment(Image.LEFT);
     gif.scaleAbsolute(148, 46); //mod_AZE_2018-02-04 (para que entre bien el logo nuevo)
     docpregs.add(gif);
     docsols.add(gif);

     ponerTitulo(docpregs, docsols);

     // Adimos las preguntas al documento de preguntas
     docpregs.add(listaPreguntas);

     /*
      * Aadimos las respuestas, en varias columnas al documento de
      * respuestas.
      */
     MultiColumnText multiColumnTextSoluciones = new MultiColumnText();
     multiColumnTextSoluciones.addRegularColumns(docsols.left(), docsols.right(), 20f,
             Integer.parseInt(ConfigProperties.getProperty("tests.solucion.columnas")));
     multiColumnTextSoluciones.addElement(listaSoluciones);
     docsols.add(multiColumnTextSoluciones);

     // Cerramos los documentos
     docpregs.close();
     docsols.close();

     return pregsFilename;
 }