Hi,

I am quite new to iText and trying to accomplish the following:

-read a list of text files from local hd
-arrange the texts of the files in a 2-column layout pdf file
-add a consecutively numbered index before each text

I started with the MovieColumns1 example (
http://itextpdf.com/examples/iia.php?id=64) and ended up with the following
code:

        final float[][] COLUMNS_COORDS = { { 36, 36, 296, 806 }, { 299, 36,
559, 806 } };

        Document document = new Document(PageSize.A4);
        PdfWriter writer = PdfWriter.getInstance(document, resultFile);
        document.open();

        ColumnText ct = new ColumnText(writer.getDirectContent());
        ct.setSimpleColumn(COLUMNS_COORDS[0][0], COLUMNS_COORDS[0][1],
            COLUMNS_COORDS[0][2], COLUMNS_COORDS[0][3]);

        File textDir = new File("c:/Users/raddatz/Desktop/123/texts/");
        File[] files = textDir.listFiles();

        int i = 1;
        int column = 0;
        for (File file : files) {
            String text = FileUtils.readFileToString(file, "UTF-8");
            float yLine = ct.getYLine();
            System.out.println("adding '" + file.getName() + "'");

            PdfPCell theText = new PdfPCell(new Phrase(text, new
Font(Font.HELVETICA, 10)));
            theText.setBorder(Rectangle.NO_BORDER);
            theText.setPaddingBottom(10);
            PdfPCell runningNumber = new PdfPCell(new Phrase(new
DecimalFormat("00").format(i++), new Font(
                Font.HELVETICA, 14, Font.BOLDITALIC,
                new Color(0.7f, 0.7f, 0.7f))));
            runningNumber.setBorder(Rectangle.NO_BORDER);
            runningNumber.setPaddingBottom(10);
            PdfPTable table = new PdfPTable(2);
            table.setWidths(new int[] { 12, 100 });
            table.addCell(runningNumber);
            table.addCell(theText);
            ct.addElement(table);
            int status = ct.go(true);
            if (ColumnText.hasMoreText(status)) {
                column = Math.abs(column - 1);
                if (column == 0) {
                    document.newPage();
                    System.out.println("inserting new page with size :" +
document.getPageSize());
                }
                ct.setSimpleColumn(
                    COLUMNS_COORDS[column][0], COLUMNS_COORDS[column][1],
                    COLUMNS_COORDS[column][2], COLUMNS_COORDS[column][3]);
                yLine = COLUMNS_COORDS[column][3];
                System.out.println("correcting yLine to: " + yLine);
            } else {
                ct.addElement(table);
            }
            ct.setYLine(yLine);
            System.out.println("before adding: " + ct.getYLine());
            status = ct.go(false);
            System.out.println("after adding: " + ct.getYLine());
            System.out.println("--------------------------------");
        }

        document.close();

Here you can find my test text files:
http://d.pr/f/Lzk0
Here you can see the result:
http://d.pr/f/NEmx

Looking at the first page of the resulting PDF I assumed everything was
working out fine.

But on second page you can see the problem(s):
-text #31 is not displayed completely (first line + index is cut / not in
visible area)
-text #46 is not displayed completely (first three lines + index is cut /
not in visible area)

On page 3 everything seems to be ok again. I am really lost here.


Looking forward to your reply

regards,
sven
------------------------------------------------------------------------------
Everyone hates slow websites. So do we.
Make your web apps faster with AppDynamics
Download AppDynamics Lite for free today:
http://p.sf.net/sfu/appdyn_d2d_mar
_______________________________________________
iText-questions mailing list
iText-questions@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/itext-questions

iText(R) is a registered trademark of 1T3XT BVBA.
Many questions posted to this list can (and will) be answered with a reference 
to the iText book: http://www.itextpdf.com/book/
Please check the keywords list before you ask for examples: 
http://itextpdf.com/themes/keywords.php

Reply via email to