Skip to main content
Skip table of contents

Is it possible to set a different alignment for text on the same line in the same cell?

I must add two text (name and date). The first snippet of text must be on the left page side, the second one on the right, and everything must be in one line. I've tried used Paragraphs, Chunks and Phrases but I don't know how to do it.

 

Posted on StackOverflow on Sep 15, 2015 by user2866205

If you want to separate two pieces of text in the same Phrase or Paragraph, you have to create a Chunk I often refer to as glue:

Chunk glue = new Chunk(new VerticalPositionMark());

You can use this glue like this:

public void createPdf(String dest) throws IOException, DocumentException {
    Document document = new Document();
    PdfWriter.getInstance(document, new FileOutputStream(dest));
    document.open();
    Chunk glue = new Chunk(new VerticalPositionMark());
    PdfPTable table = new PdfPTable(1);
    Phrase p = new Phrase();
    p.add("Left");
    p.add(glue);
    p.add("Right");
    table.addCell(p);
    document.add(table);
    document.close();
}

The result looks like this:

As you can see, the special Chunk we've created separates the Strings "left" and "right".

JavaScript errors detected

Please note, these errors can depend on your browser setup.

If this problem persists, please contact our support.