縦書きテキストの iText サンプルに従いました。
http://1t3xt.info/examples/browse/?page=example&id=145
この C# バージョンを作成しました。
PdfReader reader = new PdfReader("existing.pdf");
PdfStamper stamp = new PdfStamper(reader, new FileStream("stamped.pdf", FileMode.Create));
// change the content on top of page 1
PdfContentByte cb = stamp.GetOverContent(1);
Rectangle psize = reader.GetPageSize(1);
float width = psize.Width;
float height = psize.Height;
BaseFont bf = BaseFont.CreateFont(BaseFont.HELVETICA, BaseFont.CP1252, BaseFont.NOT_EMBEDDED);
VerticalText vt = new VerticalText(cb);
vt.SetVerticalLayout(width / 2, height / 2, height, 1, 0);
vt.AddText(new Phrase("Test", new Font(bf, 20)));
vt.Go();
stamp.Close();
それはページの中央にありますが、垂直ではなく水平です (実際にはページの中央から水平に左揃えになっています)。
ここで何か間違ったことをしているのですか、それとも iTextSharp の動作がおかしいのでしょうか?