Vertical text

Tags: vertical textlanguagesiText 5
Files: 
/**
 * This code sample was written by Bruno Lowagie in answer to this question:
 * http://stackoverflow.com/questions/28564434/why-i-cant-vertically-print-this-string-with-itext
 */
package sandbox.objects;
 
import com.itextpdf.text.Document;
import com.itextpdf.text.DocumentException;
import com.itextpdf.text.Font;
import com.itextpdf.text.Phrase;
import com.itextpdf.text.pdf.BaseFont;
import com.itextpdf.text.pdf.PdfWriter;
import com.itextpdf.text.pdf.VerticalText;
 
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import sandbox.WrapToTest;
 
@WrapToTest
public class VTExample {
 
    public static final String DEST = "results/objects/vertical_text.pdf";
    public static final String FONT = "resources/fonts/FreeSans.ttf";
 
    public static void main(String[] args) throws IOException, DocumentException {
        File file = new File(DEST);
        file.getParentFile().mkdirs();
        new VTExample().createPdf(DEST);
    }
    public void createPdf(String dest) throws IOException, DocumentException {
        Document document = new Document();
        PdfWriter writer = PdfWriter.getInstance(document, new FileOutputStream(dest));
        document.open();
        BaseFont bf = BaseFont.createFont(
            FONT, BaseFont.IDENTITY_V, BaseFont.NOT_EMBEDDED);
        Font font = new Font(bf, 20);
        VerticalText vt = new VerticalText(writer.getDirectContent());
        vt.setVerticalLayout(559, 806, 770, 29, 18);
        vt.addText(new Phrase("Hello World !!!", font));
        vt.go();
        document.close();
    }
}
File nameRaw URLUpdated
VTExample.javaVTExample.java2015-11-08 11:47 am
Resources: 
File nameRaw URLUpdated
FreeSans.ttfFreeSans.ttf2015-08-27 12:07 pm
Results: 
File nameRaw URLUpdated
cmp_vertical_text.pdfcmp_vertical_text.pdf2015-11-08 11:49 am