You are lucky, because somebody just mailed the below information to me.

Teus.


I have figured out how to get FOP to use a Unicode font so it will include the Unicode characters.
I can do it manually by telling it to load a user configuration file.  I've attached the user config file which works for using the Charis SIL font family. You also have to create font metrics files for your fonts with the TTF reader utility, as described on the FOP web site
http://xmlgraphics.apache.org/fop/0.20.5/fonts.html

<!--<!DOCTYPE configuration SYSTEM "config.dtd">--> <!-- this file contains templates which allow an user easy configuration of Fop. Actually normally you don't need this configuration file, but if you need to change configuration, you should always use this file and *not* config.xml. Usage: java org.apache.fop.apps.Fop -c userconfig.xml -fo fo-file -pdf pdf-file -->


<configuration>

<!--  
baseDir: normally the base directory is the directory where the fo file is 
         located. if you want to specify your own, uncomment this entry.
         This value can also be a URL. Actually, the value is converted to 
         a URL.
-->
<!-- 
  <entry>
    <key>baseDir</key>
    <value></value>
  </entry>
-->

<!--  
fontBaseDir: Similar to baseDir, except that this value is used for fonts. If
         it isn't specified, the value from baseDir is used.
-->
<!-- 
  <entry>
    <key>fontBaseDir</key>
    <value></value>
  </entry>
-->

<!--
************************************************************************
                        HYPHENATION 
************************************************************************
-->
  
<!--
   hyphenation directory 
   if you want to specify your own directory with hyphenation pattern
   then uncomment the next entry and add the directory name
-->

<!--
  <entry>
    <key>hyphenation-dir</key>
    <value>/java/xml-fop/hyph</value>
  </entry>
-->

<!--
************************************************************************
  Add fonts here
************************************************************************
-->

<fonts>
<font metrics-file="/usr/X11R6/lib/x11/fonts/CharisSILR.xml" kerning="yes" embed-file="/usr/X11R6/lib/x11/fonts/CharisSILR.ttf">
    <font-triplet name="Charis SIL" style="normal" weight="normal"/>
 </font>
 <font metrics-file="/usr/X11R6/lib/x11/fonts/CharisSILB.xml" kerning="yes" embed-file="/usr/X11R6/lib/x11/fonts/CharisSILB.ttf">
    <font-triplet name="Charis SIL" style="normal" weight="bold"/>
 </font>
 <font metrics-file="/usr/X11R6/lib/x11/fonts/CharisSILI.xml" kerning="yes" embed-file="/usr/X11R6/lib/x11/fonts/CharisSILI.ttf">
    <font-triplet name="Charis SIL" style="italic" weight="normal"/>
 </font>
 <font metrics-file="/usr/X11R6/lib/x11/fonts/CharisSILBI.xml" kerning="yes" embed-file="/usr/X11R6/lib/x11/fonts/CharisSILBI.ttf">
    <font-triplet name="Charis SIL" style="italic" weight="bold"/>
 </font>
<font metrics-file="/usr/X11R6/lib/x11/fonts/lucsansu.xml" kerning="yes" embed-file="/usr/X11R6/lib/x11/fonts/l_0646.ttf">
    <font-triplet name="Lucida Sans Unicode" style="normal" weight="normal"/>
 </font>
 <!-- example -->
 <!--
 <font metrics-file="arial.xml" kerning="yes" embed-file="arial.ttf">
    <font-triplet name="Arial" style="normal" weight="normal"/>
    <font-triplet name="ArialMT" style="normal" weight="normal"/>
 </font>
 <font metrics-file="arialb.xml" kerning="yes" embed-file="arialb.ttf">
    <font-triplet name="Arial" style="normal" weight="bold"/>
    <font-triplet name="ArialMT" style="normal" weight="bold"/>
 </font>
 <font metrics-file="ariali.xml" kerning="yes" embed-file="ariali.ttf">
    <font-triplet name="Arial" style="italic" weight="normal"/>
    <font-triplet name="ArialMT" style="italic" weight="normal"/>
 </font>
 <font metrics-file="arialbi.xml" kerning="yes" embed-file="arialbi.ttf">
    <font-triplet name="Arial" style="italic" weight="bold"/>
    <font-triplet name="ArialMT" style="italic" weight="bold"/>
 </font>
 -->
 <!-- Example Japanese fonts
 <font metrics-file="msgothic.xml" embed-file="D:\winnt\font\msgothic.ttc" kerning="yes">
    <font-triplet name="Gothic" style="normal" weight="normal"/>
    <font-triplet name="Gothic" style="normal" weight="bold"/>
    <font-triplet name="Gothic" style="italic" weight="normal"/>
    <font-triplet name="Gothic" style="italic" weight="bold"/>
 </font>
 <font metrics-file="msmincho.xml" embed-file="Cyberbit.ttf" kerning="yes">
    <font-triplet name="Mincho" style="normal" weight="normal"/>
    <font-triplet name="Mincho" style="normal" weight="bold"/>
    <font-triplet name="Mincho" style="italic" weight="normal"/>
    <font-triplet name="Mincho" style="italic" weight="bold"/>
   </font>
  -->
</fonts>


</configuration>







To make FOP read the userconfig.xml file,  on the command line I have to specify the -c option followed by the userconfig file name.



Sheraz Bashir wrote:

Hi everyone,

 

Some Unicode characters appear as ‘# ‘ in pdf. My guess is that probably FOP does not find the character mapping of that character which causes FOP to render # instead of that character. For example, the square root symbol appears as # in output pdf.

 

Is there a way in which we can manually add these mappings in FOP?

 

Thanks,

babz

  • # problem Sheraz Bashir
    • Re: # problem Teus Benschop

Reply via email to