Discussion:
Adding Verdana font in Linux and registering it with FOP 0.94
nancy_b
2008-09-28 12:08:12 UTC
Permalink
Hi guys,

I am working in Debian Linux.

I would like to change the default body font to Verdana. As Bob Stayton
writes in his book about Docbook XML, I should run the following command
after locating the needed font:

# java -cp /home/nancy/fop-0.94/build/fop.jar;
/usr/share/java/avalon-framework.jar; /usr/share/java/commons-logging.jar;
/usr/share/java/commons-io.jar org.apache.fop.fonts.apps.TTFReader
/usr/share/fonts/truetype/verdana.ttf verdana_metric.xml

But the following error occurs:
Usage: gij [OPTION] ... CLASS [ARGS] ...
to invoke CLASS.main, or
gij -jar [OPTION] ... JARFILE [ARGS] ...
to execute a jar file
Try `gij --help' for more information.
bash: /usr/share/java/avalon-framework.jar: Permission denied
bash: /usr/share/java/commons-logging.jar: Permission denied
bash: /usr/share/java/commons-io.jar: Permission denied

What do I do wrong? :-(

Thanks in advance!
Nancy
--
View this message in context: http://www.nabble.com/Adding-Verdana-font-in-Linux-and-registering-it-with-FOP-0.94-tp19711056p19711056.html
Sent from the FOP - Users mailing list archive at Nabble.com.
John Brown
2008-09-28 12:27:36 UTC
Permalink
Post by nancy_b
Hi guys,
I am working in Debian Linux.
I would like to change the default body font to Verdana. As Bob Stayton
writes in his book about Docbook XML, I should run the following command
# java -cp /home/nancy/fop-0.94/build/fop.jar;
/usr/share/java/avalon-framework.jar; /usr/share/java/commons-logging.jar;
/usr/share/java/commons-io.jar org.apache.fop.fonts.apps.TTFReader
/usr/share/fonts/truetype/verdana.ttf verdana_metric.xml
Usage: gij [OPTION] ... CLASS [ARGS] ...
to invoke CLASS.main, or
gij -jar [OPTION] ... JARFILE [ARGS] ...
to execute a jar file
Try `gij --help' for more information.
bash: /usr/share/java/avalon-framework.jar: Permission denied
bash: /usr/share/java/commons-logging.jar: Permission denied
bash: /usr/share/java/commons-io.jar: Permission denied
What do I do wrong? :-(
Thanks in advance!
Nancy
These are basic questions, but:

1) Do you keep the FOP jar filesin /usr/share/java? They are
normally found in fop\build or fop\lib.
2) Are these the actual names of the files? My FOP jar files
usually have a version number suffix:
avalon-framework-4.2.0.jar, commons-io-1.3.1.jar, ...

_________________________________________________________________
Stay up to date on your PC, the Web, and your mobile phone with Windows Live.
http://clk.atdmt.com/MRT/go/msnnkwxp1020093185mrt/direct/01/
nancy_b
2008-09-28 12:50:58 UTC
Permalink
Hi dear John,

You always try to help me :-)

Well, when I run '$ locate fop.jar' for example, I get the following
results:

/home/nancy/fop-0.94/build/fop.jar
/usr/bin/build/fop.jar
/usr/share/java/fop.jar

I've tried to use the files located in the 'lib' directory (those with
version number), but it did not change anything.
My best wishes,
Nancy
Post by John Brown
Post by nancy_b
Hi guys,
I am working in Debian Linux.
I would like to change the default body font to Verdana. As Bob Stayton
writes in his book about Docbook XML, I should run the following command
# java -cp /home/nancy/fop-0.94/build/fop.jar;
/usr/share/java/avalon-framework.jar;
/usr/share/java/commons-logging.jar;
/usr/share/java/commons-io.jar org.apache.fop.fonts.apps.TTFReader
/usr/share/fonts/truetype/verdana.ttf verdana_metric.xml
Usage: gij [OPTION] ... CLASS [ARGS] ...
to invoke CLASS.main, or
gij -jar [OPTION] ... JARFILE [ARGS] ...
to execute a jar file
Try `gij --help' for more information.
bash: /usr/share/java/avalon-framework.jar: Permission denied
bash: /usr/share/java/commons-logging.jar: Permission denied
bash: /usr/share/java/commons-io.jar: Permission denied
What do I do wrong? :-(
Thanks in advance!
Nancy
1) Do you keep the FOP jar filesin /usr/share/java? They are
normally found in fop\build or fop\lib.
2) Are these the actual names of the files? My FOP jar files
avalon-framework-4.2.0.jar, commons-io-1.3.1.jar, ...
_________________________________________________________________
Stay up to date on your PC, the Web, and your mobile phone with Windows Live.
http://clk.atdmt.com/MRT/go/msnnkwxp1020093185mrt/direct/01/
---------------------------------------------------------------------
--
View this message in context: http://www.nabble.com/Adding-Verdana-font-in-Linux-and-registering-it-with-FOP-0.94-tp19711056p19711330.html
Sent from the FOP - Users mailing list archive at Nabble.com.
John Brown
2008-09-28 14:50:34 UTC
Permalink
Post by nancy_b
Hi dear John,
You always try to help me :-)
Well, when I run '$ locate fop.jar' for example, I get the following
/home/nancy/fop-0.94/build/fop.jar
/usr/bin/build/fop.jar
/usr/share/java/fop.jar
I've tried to use the files located in the 'lib' directory (those with
version number), but it did not change anything.
My best wishes,
Nancy
FOP can automatically detect fonts now. Try using auto-detect
instead of the font metrics file. See
http://xmlgraphics.apache.org/fop/0.94/fonts.html#register
for details.

The relevant parts of my fop configuration file look like this:



...



...



...


...
Post by nancy_b
Hi dear John,
You always try to help me :-)
Well, when I run '$ locate fop.jar' for example, I get the following
/home/nancy/fop-0.94/build/fop.jar
/usr/bin/build/fop.jar
/usr/share/java/fop.jar
I've tried to use the files located in the 'lib' directory (those with
version number), but it did not change anything.
My best wishes,
Nancy
FOP can automatically detect fonts now. Try using auto-detect
*instead of* the font metrics file. If your fonts are not in the
standard locations, you can use the tag. See
http://xmlgraphics.apache.org/fop/0.94/fonts.html#register
for details.

The relevant parts of my fop configuration file look like this:



...



...



...


...


_________________________________________________________________
Stay up to date on your PC, the Web, and your mobile phone with Windows Live.
http://clk.atdmt.com/MRT/go/msnnkwxp1020093185mrt/direct/01/
nancy_b
2008-09-28 13:40:19 UTC
Permalink
Post by nancy_b
Hi guys,
I am working in Debian Linux.
I would like to change the default body font to Verdana. As Bob Stayton
writes in his book about Docbook XML, I should run the following command
# java -cp /home/nancy/fop-0.94/build/fop.jar;
/usr/share/java/avalon-framework.jar; /usr/share/java/commons-logging.jar;
/usr/share/java/commons-io.jar org.apache.fop.fonts.apps.TTFReader
/usr/share/fonts/truetype/verdana.ttf verdana_metric.xml
Usage: gij [OPTION] ... CLASS [ARGS] ...
to invoke CLASS.main, or
gij -jar [OPTION] ... JARFILE [ARGS] ...
to execute a jar file
Try `gij --help' for more information.
bash: /usr/share/java/avalon-framework.jar: Permission denied
bash: /usr/share/java/commons-logging.jar: Permission denied
bash: /usr/share/java/commons-io.jar: Permission denied
What do I do wrong? :-(
Thanks in advance!
Nancy
Hi guys,
I have finally managed to create the metric files. Then I went to the
fop.xconf file located in /home/nancy/fop-0.94/ and added the following:


<font-triplet name="verdana" style="normal" weight="normal"/>


<font-triplet name="verdanab" style="normal" weight="bold"/>


<font-triplet name="verdanai" style="italic" weight="normal"/>


<font-triplet name="verdanaz" style="italic" weight="bold"/>


But when I compile, the following warnings appear, and the PDF shows ###
signs instead of words:

WARNING: Font 'ZapfDingbats,italic,400' not found. Substituting with
'ZapfDingbats,normal,400'.
Sep 28, 2008 4:36:24 PM
org.apache.fop.layoutmgr.inline.LineLayoutManager$LineBreakingAlgorithm
updateData2
WARNING: Line 1 of a paragraph overflows the available area. (fo:block,
location: 64/262)
Sep 28, 2008 4:36:24 PM org.apache.fop.fonts.FontInfo notifyFontReplacement
WARNING: Font 'Symbol,normal,700' not found. Substituting with
'Symbol,normal,400'.
Sep 28, 2008 4:36:34 PM org.apache.fop.fo.flow.TableColumn bind

Please, help!
--
View this message in context: http://www.nabble.com/Adding-Verdana-font-in-Linux-and-registering-it-with-FOP-0.94-tp19711056p19711685.html
Sent from the FOP - Users mailing list archive at Nabble.com.
nancy_b
2008-09-28 13:57:32 UTC
Permalink
Post by nancy_b
Post by nancy_b
Hi guys,
I am working in Debian Linux.
I would like to change the default body font to Verdana. As Bob Stayton
writes in his book about Docbook XML, I should run the following command
# java -cp /home/nancy/fop-0.94/build/fop.jar;
/usr/share/java/avalon-framework.jar;
/usr/share/java/commons-logging.jar; /usr/share/java/commons-io.jar
org.apache.fop.fonts.apps.TTFReader /usr/share/fonts/truetype/verdana.ttf
verdana_metric.xml
Usage: gij [OPTION] ... CLASS [ARGS] ...
to invoke CLASS.main, or
gij -jar [OPTION] ... JARFILE [ARGS] ...
to execute a jar file
Try `gij --help' for more information.
bash: /usr/share/java/avalon-framework.jar: Permission denied
bash: /usr/share/java/commons-logging.jar: Permission denied
bash: /usr/share/java/commons-io.jar: Permission denied
What do I do wrong? :-(
Thanks in advance!
Nancy
Hi guys,
I have finally managed to create the metric files. Then I went to the
<font-triplet name="verdana" style="normal" weight="normal"/>
<font-triplet name="verdanab" style="normal" weight="bold"/>
<font-triplet name="verdanai" style="italic" weight="normal"/>
<font-triplet name="verdanaz" style="italic" weight="bold"/>
But when I compile, the following warnings appear, and the PDF shows ###
WARNING: Font 'ZapfDingbats,italic,400' not found. Substituting with
'ZapfDingbats,normal,400'.
Sep 28, 2008 4:36:24 PM
org.apache.fop.layoutmgr.inline.LineLayoutManager$LineBreakingAlgorithm
updateData2
WARNING: Line 1 of a paragraph overflows the available area. (fo:block,
location: 64/262)
Sep 28, 2008 4:36:24 PM org.apache.fop.fonts.FontInfo
notifyFontReplacement
WARNING: Font 'Symbol,normal,700' not found. Substituting with
'Symbol,normal,400'.
Sep 28, 2008 4:36:34 PM org.apache.fop.fo.flow.TableColumn bind
Please, help!
When I look at the FO file, I discover the following:
<fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format"
font-family="Verdana,Symbol,ZapfDingbats"...
--
View this message in context: http://www.nabble.com/Adding-Verdana-font-in-Linux-and-registering-it-with-FOP-0.94-tp19711056p19711798.html
Sent from the FOP - Users mailing list archive at Nabble.com.
John Brown
2008-09-28 15:38:21 UTC
Permalink
Post by nancy_b
Hi dear John,
You always try to help me :-)
Well, when I run '$ locate fop.jar' for example, I get the following
/home/nancy/fop-0.94/build/fop.jar
/usr/bin/build/fop.jar
/usr/share/java/fop.jar
I've tried to use the files located in the 'lib' directory (those with
version number), but it did not change anything.
My best wishes,
Nancy
I keep forgetting not to write XML in Hotmail.

FOP can automatically detect fonts now. Try using auto-detect
instead of the font metrics file. See
http://xmlgraphics.apache.org/fop/0.94/fonts.html#register
for details.

The relevant parts of my fop configuration file look like this:

<renderers>
<renderer mime="application/pdf">
...
<fonts>
<!-- embedded fonts -->

...
<auto-detect/>
</fonts>

...
</renderer>

...
</renderers>
nancy_b
2008-09-29 07:21:40 UTC
Permalink
Hi John,

Thanks for your response! Unfortunately, the auto-detect capability did not
work for me. By the way, where is the main configuration file that FOP uses
to process default fonts and other parameters?

Thanks in advance!
Nancy
Post by John Brown
Post by nancy_b
Hi dear John,
You always try to help me :-)
Well, when I run '$ locate fop.jar' for example, I get the following
/home/nancy/fop-0.94/build/fop.jar
/usr/bin/build/fop.jar
/usr/share/java/fop.jar
I've tried to use the files located in the 'lib' directory (those with
version number), but it did not change anything.
My best wishes,
Nancy
I keep forgetting not to write XML in Hotmail.
FOP can automatically detect fonts now. Try using auto-detect
instead of the font metrics file. See
http://xmlgraphics.apache.org/fop/0.94/fonts.html#register
for details.
<renderers>
<renderer mime="application/pdf">
...
<fonts>
<!-- embedded fonts -->
...
<auto-detect/>
</fonts>
...
</renderer>
...
</renderers>
---------------------------------------------------------------------
--
View this message in context: http://www.nabble.com/Adding-Verdana-font-in-Linux-and-registering-it-with-FOP-0.94-tp19711056p19719301.html
Sent from the FOP - Users mailing list archive at Nabble.com.
Vincent Hennebert
2008-09-29 11:53:00 UTC
Permalink
Hi Nancy,
Post by nancy_b
Hi John,
Thanks for your response! Unfortunately, the auto-detect capability did not
work for me. By the way, where is the main configuration file that FOP uses
to process default fonts and other parameters?
Try to ‘semi-automatically’ configure the fonts:
– by manually pointing to the directory containing the Verdana fonts:
<directory>/usr/share/fonts/truetype/verdana/</directory>
– if that doesn’t work for some variants (e.g., you get the upright
version but not the italic one), then you have to go a step further:
<font kerning="yes"
embed-url="/usr/share/fonts/truetype/verdana/verdana.ttf">
<font-triplet name="Verdana" style="normal" weight="normal"/>
</font>
<font kerning="yes"
embed-url="/usr/share/fonts/truetype/verdana/verdana-italic.ttf">
<font-triplet name="Verdana" style="italic" weight="normal"/>
</font>
etc.
Note that the family name remains the same (Verdana), only the style
and weight attributes change.

This works with both FOP 0.94 and 0.95. At any rate there’s no need to
generate the XML metrics files.
Post by nancy_b
WARNING: Font 'ZapfDingbats,italic,400' not found. Substituting with 'ZapfDingbats,normal,400'.
Sep 28, 2008 4:36:24 PM org.apache.fop.fonts.FontInfo notifyFontReplacement
WARNING: Font 'Symbol,normal,700' not found. Substituting with 'Symbol,normal,400'.
This is because there are not italic versions of the ZapfDingbats and
Symbol fonts. DocBook specifies those fonts so that a fallback can be
used for special characters, but this doesn’t work well with FOP. If
your custom font contains glyphs for all the characters you use in your
document, then you should have no problems. Verdana does contain glyphs
for all the characters and ponctuation marks commonly used in English,
at any rate. If you use other special characters like in mathematics,
watch unexpected ‘#’ in the output pdf: this is what FOP uses as an
indication that it couldn’t find a glyph for the corresponding
character.

BTW, you shouldn’t get those warnings with FOP 0.94. You do get them
with FOP 0.95, although this is not really desirable and I believe that
should be fixed again in FOP Trunk.


HTH,
Vincent
John Brown
2008-09-29 12:20:42 UTC
Permalink
Post by nancy_b
Hi John,
Thanks for your response! Unfortunately, the auto-detect capability did not
work for me. By the way, where is the main configuration file that FOP uses
to process default fonts and other parameters?
Thanks in advance!
Nancy
Apparently, the defaults are built-in. You have to make your own
configuration file and run
fop -c <custom-conf-file> <rest-of-command-line>

Copy the sample file at There is a sample file at
<fop-folder>/conf/fop.xconf and edit it. My previous
post shows where to add (or uncomment) the necessary tags.

Also note the suggestion by another poster to use the <directory>
tag, which is necessary if verdana.ttf is not located in one of the
standard places on your system.

I have used such Windows TrueType fonts as Arial, Times New Roman,
Calibri and Cambria like this on my Kubuntu Hardy Heron system.
nancy_b
2008-10-02 06:44:43 UTC
Permalink
Thank you for your help!!! I appreciate it a lot!

Best regards,
Nancy
Post by John Brown
Post by nancy_b
Hi John,
Thanks for your response! Unfortunately, the auto-detect capability did not
work for me. By the way, where is the main configuration file that FOP uses
to process default fonts and other parameters?
Thanks in advance!
Nancy
Apparently, the defaults are built-in. You have to make your own
configuration file and run
fop -c <custom-conf-file> <rest-of-command-line>
Copy the sample file at There is a sample file at
<fop-folder>/conf/fop.xconf and edit it. My previous
post shows where to add (or uncomment) the necessary tags.
Also note the suggestion by another poster to use the <directory>
tag, which is necessary if verdana.ttf is not located in one of the
standard places on your system.
I have used such Windows TrueType fonts as Arial, Times New Roman,
Calibri and Cambria like this on my Kubuntu Hardy Heron system.
---------------------------------------------------------------------
--
View this message in context: http://www.nabble.com/Adding-Verdana-font-in-Linux-and-registering-it-with-FOP-0.94-tp19711056p19774149.html
Sent from the FOP - Users mailing list archive at Nabble.com.
ezzakrem
2009-05-26 17:14:53 UTC
Permalink
hello,
i have the same problem generating metric font with java -cp build/fop.jar,


<font-triplet name="Verdana" style="normal" weight="normal"/>

***@debian:~/Desktop/fop-0.94$ ./fop -xsl changeContacts.xsl -xml
changeContacts.xml -pdf test.pdf
26 mai 2009 19:13:58 org.apache.fop.fonts.FontInfo notifyFontReplacement
ATTENTION: Font 'Verdana,normal,400' not found. Substituting with
'any,normal,400'.
--
View this message in context: http://www.nabble.com/Adding-Verdana-font-in-Linux-and-registering-it-with-FOP-0.94-tp19711056p23727572.html
Sent from the FOP - Users mailing list archive at Nabble.com.
Loading...