2017-10-24 7 views
2

Ich bin die Einrichtung eines fop.xconf und konfigurieren, welche Schriftarten Apache FOP verfügbar sind und möchten lieber einen relativen Pfad verwenden, als einen absoluten Pfad:Apache FOP 2.2 Fügen Sie Schriftarten mit Relativer Pfad

<fop version="1.0"> 

    <strict-configuration>true</strict-configuration> 
    <strict-validation>true</strict-validation> 
    <base>./</base> 
    <font-base>./</font-base> 
    <source-resolution>72</source-resolution> 
    <target-resolution>72</target-resolution> 
    <default-page-settings height="11in" width="8.26in"/> 

    <hyphenation-pattern lang="en" country="ZA">en_ZA</hyphenation-pattern> 

    <renderers> 
     <renderer mime="application/pdf"> 
     <fonts> 
      <directory recursive="true">/Users/me/Code/company/project/src/main/resources/templates/fonts</directory> 
      <substitutions> 
       <substitution> 
        <from font-family="Helvetica" /> 
        <to font-family="OpenSans" /> 
       </substitution> 
      </substitutions> 
     </fonts> 
     </renderer> 
    </renderers>  
</fop> 

Ist es möglich, das Schriftartenverzeichnis innerhalb von Renderern auf einen relativen Pfad zu setzen?

Oder ist es möglich, in dem programmatisch festlegen Fall I Verwendung von

this::class.java.getResource("/templates/fonts/MyFont.ttf") 

zu erhalten den vollständigen Pfad machen könnte?

2017-10-24 05:24:48,591 WARN org.apache.fop.apps.FOUserAgent - The font directory ./fonts could not be found. 
2017-10-24 05:24:48,591 WARN org.apache.fop.apps.FOUserAgent - The font directory ./templates/fonts could not be found. 
2017-10-24 05:24:48,591 WARN org.apache.fop.apps.FOUserAgent - The font directory ./resources/templates/fonts could not be found. 

Antwort

1

setzen die URL = (/ Users/me/Code/Unternehmen/Projekt/src/main/resources/templates/fonts) in <font-base>./</font-base> wie folgt aus:

  • <font-base>/Users/me/Code/company/project/src/main/resources/templates/fonts</font-base>

Und Sie lösen das Problem! ;)

+0

Das ist ein absoluter Pfad, kein relativer Pfad. Den absoluten Weg habe ich leider die meiste Zeit nicht. –