3

Я пытаюсь использовать шрифт Microsoft Arial Unicode в проекте DocBook. Проект использует Apache FOP. FOP устанавливается в /usr/local/bin/fop-1.1 .

Шрифт Arial_Unicode.ttf устанавливается в /usr/share/fonts/truetype/:

$ ls -l /usr/share/fonts/truetype/
total 22812
drwxr-xr-x 2 root    root      4096 Oct 22 11:43 abyssinica
-rw-r--r-- 1 root    root  23278008 Oct  8  2013 Arial_Unicode.ttf
drwxr-xr-x 2 root    root      4096 Nov  7 12:02 dejavu
...

Файл конфигурации FOP находится по адресу:

$ find /usr/local/bin/fop-1.1/ -iname *.xconf
/usr/local/bin/fop-1.1/conf/fop.xconf

Я открыл fop.xconf и добавил два элемента directory и элемент auto-detect под renderer для mime="application/pdf" соответствии с конфигурацией массовых шрифтов Apache:

  <renderers>
    <renderer mime="application/pdf">
      <filterList>
        ...
      </filterList>

      <fonts>
        <directory recursive="true">/usr/share/fonts</directory>
        <directory recursive="true">/usr/share/fonts/truetype</directory>

        <!-- automatically detect operating system installed fonts -->
        <auto-detect/>

        ...
      </fonts>
    ...

Когда я создаю свою книгу, почти все глифы #:

При использовании другого объектного процессора (такого как xep RenderX) документ отображается. Поэтому я считаю, что DocBook XML хорош (в частности, пользовательский перевод, использующий Arial_Unicode.ttf).

Как заставить Apache FOP соблюдать его конфигурацию?

1 ответ1

0

Попробуйте явно указать шрифт Arial в файле конфигурации:

<?xml version="1.0"?>
<fop>
    <renderers>
        <renderer mime="application/pdf">       
          <fonts>                           
                <font kerning="yes" embed-url="file:///C:/windows/fonts/arial.ttf">
                      <font-triplet name="Arial" style="normal" weight="normal"/>
                </font>                     
          </fonts>
        </renderer>
    </renderers>     
</fop> 

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .