Grails: рендеринг PDF - наложение шрифтов - PullRequest
0 голосов
/ 11 апреля 2019

Приложение My Grails создает файл PDF, в котором есть и английские, и японские символы.

Я хочу использовать разные шрифты для каждого языка (а именно Open Sans для английского и MS Gothic для японского). Я попытался с помощью укладки шрифтов в моем файле CSS. Однако это не работает (я даже пытался указать диапазон Юникода).

    @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. Это какая-то проблема с генерацией PDF в библиотеке iText или XHTMLRenderer? (https://gpc.github.io/rendering/guide/single.html#8.%20Exotic%20Characters) Есть ли способ сделать это?

...