2016-05-03 12 views
0

Я создал отчет Birt, в котором я определил шрифт семейства Segoeuii, который отлично работает в Windows, но когда он выходит из ОС Unix, он меняет все шрифты к Times new Roman это как-то потому, что шрифт отсутствует в файловой системе Unix, а Birt не регистрирует шрифт, который не находится в файловой системе, поэтому нам нужно сначала зарегистрировать шрифты, используя FontFactory. Я регистрирую шрифт и чем установить этот шрифт в свойстве, но все же он отображает Times new Roman.
Вот мой код.Как изменить шрифт текста в Birt DEAPI

public void testCode() { 
    URL font = Thread.currentThread().getContextClassLoader().getResource("segoeuii.ttf"); // getResourceAsStream("segoeuii.ttf"); 
    TextItemHandle text = (TextItemHandle) designHandle.findElement("TextProbingAttacks"); 
    FontFactory.register(font.toString(), "test_font"); 
    Font myfont = FontFactory.getFont("test_font"); 
    try { 
     text.setProperty("fontFamily", myfont); 
    } catch (SemanticException e) { 
     // TODO Auto-generated catch block 
     e.printStackTrace(); 
    } 
} 

ответ

0

Вам необходимо установить шрифты в ОС Unix.

Например, если вы используете Ubuntu (Linux), то

sudo apt-get install ttf-mscorefonts-installer 

Перезапустите затмение все шрифты Microsoft будет отражать в вашем BIRT докладе перспективы

+0

Но через некоторое время я понял, это 'Birt' просто показывает «Times new Roman», находится ли шрифт в файловой системе или нет. Эта проблема связана с Unix специально Ubuntu 14.04. – Root

+0

И, регистрируя шрифт, необходимо выполнить установку шрифтов в системе, потому что в некоторых случаях в производственной среде у нас нет доступа к системе. – Root

 Смежные вопросы

  • Нет связанных вопросов^_^