Uploaded image for project: 'Confluence Data Center'
  1. Confluence Data Center
  2. CONFSERVER-7704

PDF Language Support - custom font usage not supported

XMLWordPrintable

      The pdf export does not support different fonts to be used except the 'default' Verdana font installed with Confluence standalone and Windows OS. It works however on Linux Debian.

      1. Upload system font such as arial.ttf - uploading successful, however an error in Tomcat console reports that the associated arial-metrics.xml file has not been found.

      This font contains no embedding license restrictions
      TTF Reader v1.1.1

      Reading C:\data\confhome2three\fonts\cour.ttf...

      Number of glyphs in font: 1318
      Creating xml font file...

      Creating CID encoded metrics
      Writing xml font file C:\data\confhome2three\fonts\cour-metrics.xml...

      This font contains no embedding license restrictions
      TTF Reader v1.1.1

      Reading C:\data\confhome2three\fonts\cour.ttf...

      Number of glyphs in font: 1318
      Creating xml font file...

      Creating CID encoded metrics
      Writing xml font file C:\data\confhome2three\fonts\cour-metrics.xml...

      2. Check conf-home/fonts/arial.ttf - should be there yet the cour-metrics.xml isn't
      3. Check the fop.xml and you see that it expects the cour-metrics.xml to be used for pdf export which does not exists however.
      ===========
      <?xml version="1.0" encoding="UTF-8"?>

      <configuration>
      <fonts>
      <font metrics-file="cour-metrics.xml" embed-file="cour.ttf" kerning="yes">
      <font-triplet name="cour" style="normal" weight="normal"/>
      <font-triplet name="cour" style="normal" weight="bold"/>
      <font-triplet name="cour" style="italic" weight="normal"/>
      <font-triplet name="cour" style="italic" weight="bold"/>
      </font>
      </fonts>
      </configuration>
      ===========

      3. Try generating pdf export - it obviously fails horribly when fop is trying to use the font metrics which does not exists

      Caused by: java.lang.NullPointerException
      at org.apache.fop.render.pdf.fonts.LazyFont.getAscender(LazyFont.java:127)
      at org.apache.fop.layout.FontState.getAscender(FontState.java:143)

      (see attached stacktrace-pdfexport.tx file attached for more details.

        1. stacktrace-pdfexport.txt
          18 kB
        2. stdout.txt
          12 kB

              Unassigned Unassigned
              ivan@atlassian.com Ivan Benko [Atlassian]
              Votes:
              0 Vote for this issue
              Watchers:
              0 Start watching this issue

                Created:
                Updated:
                Resolved: