Embedding Unicode fonts

Embedding Unicode Fonts - Please Note: Make sure that the font license allows embedding!

PDF pdf = new PDF();
pdf.SetFontPath("fonts/Gentium102");
Font f1 = new Font(pdf, "GenR102.ttf", CodePage.UNICODE, Embed.YES);
// Please note:
// All font and image objects must be created before the first page.

Page page = new Page(pdf, Letter.PORTRAIT);
f1.SetSize(18);
int x_pos = 200;
int y_pos = 20;
TextLine text = new TextLine(f1);
text.SetPosition(x_pos, y_pos);
StringBuilder buf = new StringBuilder();
for (int i = 0x20; i < 0x7F; i++) {
    if (i % 16 == 0) {
        text.SetText(buf.ToString());
        text.SetPosition(x_pos, y_pos += 24);
        text.DrawOn(page);
        buf = new StringBuilder();
    }
    buf.Append((char) i);
}
y_pos += 24;
buf = new StringBuilder();
for (int i = 0x390; i < 0x3EF; i++) {
    if (i % 16 == 0) {
        text.SetText(buf.ToString());
        text.SetPosition(x_pos, y_pos += 24);
        text.DrawOn(page);
        buf = new StringBuilder();
    }
    buf.Append((char) i);
}
y_pos += 24;
buf = new StringBuilder();
for (int i = 0x400; i < 0x46F; i++) {
    if (i % 16 == 0) {
        text.SetText(buf.ToString());
        text.SetPosition(x_pos, y_pos += 24);
        text.DrawOn(page);
        buf = new StringBuilder();
    }
    buf.Append((char) i);
}
pdf.Wrap();
pdf.Save("Example_07.pdf");
Example_07.cs Example_07.pdf

© 2007 Innovatics Inc.