【问题标题】:How to change the Font of the text in Birt DEAPI如何更改 Birt DEAPI 中文本的字体
【发布时间】:2016-05-03 11:57:59
【问题描述】:

我创建了一个Birt 报告,其中我为文本定义了一个 Segoeuii 字体系列,它在 Windows 中可以正常工作,但是当它来自 Unix OS 时,它会将所有字体更改为 Times new Roman 不知何故,因为字体不存在于 Unix 文件系统中,Birt 没有注册不在文件系统中的字体,所以我们需要先注册字体,所以使用 @ 987654323@ 我注册了字体,然后在属性中设置了这个字体,但它仍然显示 Times new Roman
这是我的代码。

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();
    }
}

【问题讨论】:

    标签: java fonts birt birt-deapi


    【解决方案1】:

    您需要在 Unix 操作系统中安装字体。

    例如,如果您使用 Ubuntu(Linux 操作系统),那么

    sudo apt-get install ttf-mscorefonts-installer
    

    重启你的eclipse所有微软字体都会反映在你的BIRT报告透视图中

    【讨论】:

    • 但过了一段时间我发现Birt 只是显示Times new Roman 字体是否在文件系统中。这个问题出在 Unix 上,特别是 Ubuntu 14.04。
    • 并且注册字体满足了在系统上安装字体的需要,因为在某些情况下在生产环境中我们无法访问系统。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-10-20
    • 2020-03-11
    • 1970-01-01
    • 2013-06-08
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多