Grails:PDF渲染-字体堆叠

时间:2019-04-11 04:56:07

标签: css grails fonts itext xhtmlrenderer

我的Grails应用程序正在生成一个包含英语和日语字符的PDF文件。

我想为每种语言使用不同的字体(英语为Open Sans,日语为MS Gothic)。我已经尝试在CSS文件中使用字体堆叠。但是,它不起作用(我什至试图指定unicode范围)。

    @font-face {
        font-family: 'Open Sans';
        src: url("path to OpenSans-Regular.ttf");
        -fs-pdf-font-embed: embed;
        -fs-pdf-font-encoding: Identity-H;
        unicode-range: U+0000-007F;
    }

    @font-face {
        font-family: 'MS Gothic';
        src: url("path to MS_Gothic.ttf");
        -fs-pdf-font-embed: embed;
        -fs-pdf-font-encoding: Identity-H;
        unicode-range: U+3040-309F, U+30A0-30FF, U+4E00-9FBF;
    }

这将导致所有字体都在MS Gothic中生成(在这种情况下,英语不是很漂亮)。

.body {
        font-family: "'MS Gothic', 'Open Sans'";
}

这将导致在Open Sans中生成所有字体(在这种情况下,不支持日语)。

.body {
        font-family: "'Open Sans', 'MS Gothic'";
}

因此,基本上,我可以在不同的字体之间切换,但是我不能对单个pdf文件使用多种字体。 iText库或XHTMLRenderer中的PDF生成是否存在问题? (https://gpc.github.io/rendering/guide/single.html#8.%20Exotic%20Characters)有办法解决吗?

0 个答案:

没有答案