Re: Greek text in the HelloWorld example causes Severe Exception
Unfortunately FOP insists to put a # in place of ί. I can confirm that Arial.ttf contains a CMAP entry for all the required characters. I opened Arial.ttf with Character Map (the Windows utility for viewing fonts). There I inserted code 03af and it showed the character ί. The same applies for FreeSans.ttf. myconfig2.xml contains exactly this code: ?xml version=1.0 encoding=utf-8? fop version=1.0 renderers renderer mime=application/pdf fonts font embed-url=file:///C:/Users/nikos/MyFonts/arial.ttf font-triplet name=arial style=normal weight=normal/ /font /fonts /renderer /renderers /fop Since I explicitly tell FOP to use arial.ttf, why does it not use it? I also tried this on a Mac OS X 10.6 using Arial with no success. I get the same warning telling iotatonos couldn't be found in font 'Symbol'. Maybe I am doing something else wrong? Nikos 2010/8/30 Spyros Papantoniou spyros.papanton...@gmail.com Dont use Symbol! Its a mess it has only the 24 Greek letters not accents, not dialysis... Find a font that has full UTF-8 glyph set in Greek, like on the Mac Arial, Times New Roman, Helvetica all have it. I dont have Windoze to check which fonts have the full glyph set. FreeSans I discovered is no good either, nor DINRg Spyros On 30 Αυγ 2010, at 1:04 π.μ., Nikolaos Paraschou wrote: We made some progress I think. I converted name.xml, name2fo.xsl and myconfig2.xml from ANSI to UTF-8 (all three files begin with ?xml version=1.0 encoding=UTF-8? ) and then ran the command: fop -c myconfig2.xml -xml name.xml -xsl name2fo.xsl -pdf name.pdf which produced the following output: C:\Users\nikos\Desktopfop -c myconfig2.xml -xml name.xml -xsl name2fo.xsl -pdf name.pdf 30 +Ϋή 2010 12:37:38 ΏΉ org.apache.fop.events.LoggingEventListener processEvent WARNING: Glyph - (0x3af, iotatonos) not available in font Symbol. The word inside name.xml is Νίκος. After the conversion the pdf displays Hello, Ν#κος! (with the name aligned a bit lower than Hello,). Obviously, FOP isn't looking for iotatonos inside Arial.ttf or Freesans.ttf (I've tried it with both fonts), but instead it is trying to find iotatonos inside font Symbol. Why is this happening? I opened Arial.ttf and FreeSans.ttf with Character Map. The description these two fonts have for the character ί is: U+03AF: Greek Small Letter Iota With Tonos So, FOP is looking for ί in Arial and FreeSans as iotatonos but it's not there with that descritpion. Maybe that's why it's looking in font Symbol later on (correct me if I am wrong). How could this problem be solved? Thank you again, Nikos 2010/8/30 Spyros Papantoniou spyros.papanton...@gmail.com: The Invalid byte 2 of 2-byte UTF-8 se points to not proper UTF encoding somewhere. I tested FOP 0.95 and it works with Greek! Do not use FreeSans, as it does include Greek glyphs [I found out the hard way..] I use Arial.ttf on the Mac with success. Are all your files UTF8 and their header UTF-8? like: ?xml version=1.0 encoding=UTF-8? Spyros Papantoniou, PhD On 30 Αυγ 2010, at 12:10 π.μ., Nikolaos Paraschou wrote: First of all, thank you for your reply Spyros. I created myconfig2.xml with exactly the following code: fop version=1.0 renderers renderer mime=application/pdf fonts font embed-url=file:///Users/nikos/MyFonts/FreeSans.ttf font-triplet name=FreeSans style=normal weight=normal/ /font /fonts /renderer /renderers /fop and then I run the command: fop -c myconfig2.xml -xml name.xml -xsl name2fo.xsl -pdf name.pdf which produced again a severe exception: C:\Users\nikos\Desktopfop -c myconfig2.xml -xml name.xml -xsl name2fo.xsl -pdf name.pdf 29 +Ϋή 2010 11:57:59 ΉΉ org.apache.fop.cli.Main startFOP SEVERE: Exception javax.xml.transform.TransformerException: Invalid byte 2 of 2-byte UTF-8 sequenc e. at org.apache.fop.cli.InputHandler.transformTo(InputHandler.java:302) at org.apache.fop.cli.InputHandler.renderTo(InputHandler.java:130) at org.apache.fop.cli.Main.startFOP(Main.java:174) at org.apache.fop.cli.Main.main(Main.java:205) Caused by: javax.xml.transform.TransformerException: Invalid byte 2 of 2-byte UT F-8 sequence. at org.apache.xalan.transformer.TransformerImpl.fatalError(TransformerIm pl.java:780) at org.apache.xalan.transformer.TransformerImpl.transform(TransformerImp l.java:756) at org.apache.xalan.transformer.TransformerImpl.transform(TransformerImp l.java:1284) at org.apache.xalan.transformer.TransformerImpl.transform(TransformerImp l.java:1262) at org.apache.fop.cli.InputHandler.transformTo(InputHandler.java:299) ... 3 more - ; SystemID: file:/C:/Users/nikos/Desktop/name.xml; Line#: 1; Column#: 7
Re: Greek text in the HelloWorld example causes Severe Exception
you need an xsl as well... the xml with Nikos does not knwo which font to use: my xsl contains explicit calls to the xml: This is exactly the reason it didn't work. Thank you Spyros! I edited name2fo.xsl. It was: fo:block Hello, xsl:value-of select=name/! /fo:block and i changed it to: fo:block font-family=arial Hello, xsl:value-of select=name/! /fo:block So the font family must be explicitly defined in the XSLT stylesheet too. Finally, problem solved. Glenn, thank you for your reply too. Regards, Nikos
Re: Greek text in the HelloWorld example causes Severe Exception
First of all, thank you for your reply Spyros. I created myconfig2.xml with exactly the following code: fop version=1.0 renderers renderer mime=application/pdf fonts font embed-url=file:///Users/nikos/MyFonts/FreeSans.ttf font-triplet name=FreeSans style=normal weight=normal/ /font /fonts /renderer /renderers /fop and then I run the command: fop -c myconfig2.xml -xml name.xml -xsl name2fo.xsl -pdf name.pdf which produced again a severe exception: C:\Users\nikos\Desktopfop -c myconfig2.xml -xml name.xml -xsl name2fo.xsl -pdf name.pdf 29 +Ϋή 2010 11:57:59 ΉΉ org.apache.fop.cli.Main startFOP SEVERE: Exception javax.xml.transform.TransformerException: Invalid byte 2 of 2-byte UTF-8 sequenc e. at org.apache.fop.cli.InputHandler.transformTo(InputHandler.java:302) at org.apache.fop.cli.InputHandler.renderTo(InputHandler.java:130) at org.apache.fop.cli.Main.startFOP(Main.java:174) at org.apache.fop.cli.Main.main(Main.java:205) Caused by: javax.xml.transform.TransformerException: Invalid byte 2 of 2-byte UT F-8 sequence. at org.apache.xalan.transformer.TransformerImpl.fatalError(TransformerIm pl.java:780) at org.apache.xalan.transformer.TransformerImpl.transform(TransformerImp l.java:756) at org.apache.xalan.transformer.TransformerImpl.transform(TransformerImp l.java:1284) at org.apache.xalan.transformer.TransformerImpl.transform(TransformerImp l.java:1262) at org.apache.fop.cli.InputHandler.transformTo(InputHandler.java:299) ... 3 more - ; SystemID: file:/C:/Users/nikos/Desktop/name.xml; Line#: 1; Column#: 7 javax.xml.transform.TransformerException: Invalid byte 2 of 2-byte UTF-8 sequenc e. at org.apache.xalan.transformer.TransformerImpl.fatalError(TransformerIm pl.java:780) at org.apache.xalan.transformer.TransformerImpl.transform(TransformerImp l.java:756) at org.apache.xalan.transformer.TransformerImpl.transform(TransformerImp l.java:1284) at org.apache.xalan.transformer.TransformerImpl.transform(TransformerImp l.java:1262) at org.apache.fop.cli.InputHandler.transformTo(InputHandler.java:299) at org.apache.fop.cli.InputHandler.renderTo(InputHandler.java:130) at org.apache.fop.cli.Main.startFOP(Main.java:174) at org.apache.fop.cli.Main.main(Main.java:205) Obviously I am missing something here. Any idea what might that be? Thank you, Nikos 2010/8/29 Spyros Papantoniou spyros.papanton...@gmail.com: Better use something like: fop version=1.0 renderers renderer mime=application/pdf fonts font embed-url=file:///Users/sjp/Triboni8090/ginkgo/fopFonts/FreeSans.ttf font-triplet name=FreeSans style=normal weight=normal/ /font /fonts renderer /renderers /fop I think you missed the actual filename in the declaration. Greek works after 0.94 version though. No Greek with 0.20! Spyros Papantoniou, PhD SIP Ltd Software Integration Processes Ag. Konstantinou 40 GR-15124 Marousi Tel: +30 210 6178270 On 29 Αυγ 2010, at 7:35 μ.μ., Nikolaos Paraschou wrote: Hello, This is the first time I am using Apache FOP. I started with the quick start guide and the Hello World example which worked just fine (with Latin characters). I decided to replace Frank with a name in Greek characters, lets say Νίκος. I copied fop.xonf to userconfig.xml and edited the fonts tag to look like this: fonts !-- register all the fonts found in a directory -- directoryC:\Users\nikos\MyFonts/directory /fonts Then I copied arial.ttf from C:\Windows\Fonts to C:\Users\nikos\MyFonts. I opened arial.ttf with the Windows program Character Map to inspect it and make sure it contains Greek glyphs. It does contain Greek glyphs. When I ran the command: fop -c userconfig.xml -xml name.xml -xsl name2fo.xsl -pdf name.pdf I got back the following severe exception: C:\Users\nikos\Desktopfop -c myconfig.xml -xml name.xml -xsl name2fo.xsl -pdf n ame.pdf 29 ┴Ϋή 2010 7:17:22 ΉΉ org.apache.fop.apps.FopFactoryConfigurator configure INFO: Default page-height set to: 11in 29 ┴Ϋή 2010 7:17:22 ΉΉ org.apache.fop.apps.FopFactoryConfigurator configure INFO: Default page-width set to: 8.26in 29 ┴Ϋή 2010 7:17:22 ΉΉ org.apache.fop.cli.Main startFOP SEVERE: Exception javax.xml.transform.TransformerException: Invalid byte 2 of 2-byte UTF-8 sequenc e. at org.apache.fop.cli.InputHandler.transformTo(InputHandler.java:302) at org.apache.fop.cli.InputHandler.renderTo(InputHandler.java:130) at org.apache.fop.cli.Main.startFOP(Main.java:174) at org.apache.fop.cli.Main.main(Main.java:205) Caused by: javax.xml.transform.TransformerException: Invalid byte 2 of 2-byte UT F-8 sequence. at org.apache.xalan.transformer.TransformerImpl.fatalError(TransformerIm pl.java:780
Re: Greek text in the HelloWorld example causes Severe Exception
We made some progress I think. I converted name.xml, name2fo.xsl and myconfig2.xml from ANSI to UTF-8 (all three files begin with ?xml version=1.0 encoding=UTF-8? ) and then ran the command: fop -c myconfig2.xml -xml name.xml -xsl name2fo.xsl -pdf name.pdf which produced the following output: C:\Users\nikos\Desktopfop -c myconfig2.xml -xml name.xml -xsl name2fo.xsl -pdf name.pdf 30 +Ϋή 2010 12:37:38 ΏΉ org.apache.fop.events.LoggingEventListener processEvent WARNING: Glyph - (0x3af, iotatonos) not available in font Symbol. The word inside name.xml is Νίκος. After the conversion the pdf displays Hello, Ν#κος! (with the name aligned a bit lower than Hello,). Obviously, FOP isn't looking for iotatonos inside Arial.ttf or Freesans.ttf (I've tried it with both fonts), but instead it is trying to find iotatonos inside font Symbol. Why is this happening? I opened Arial.ttf and FreeSans.ttf with Character Map. The description these two fonts have for the character ί is: U+03AF: Greek Small Letter Iota With Tonos So, FOP is looking for ί in Arial and FreeSans as iotatonos but it's not there with that descritpion. Maybe that's why it's looking in font Symbol later on (correct me if I am wrong). How could this problem be solved? Thank you again, Nikos 2010/8/30 Spyros Papantoniou spyros.papanton...@gmail.com: The Invalid byte 2 of 2-byte UTF-8 se points to not proper UTF encoding somewhere. I tested FOP 0.95 and it works with Greek! Do not use FreeSans, as it does include Greek glyphs [I found out the hard way..] I use Arial.ttf on the Mac with success. Are all your files UTF8 and their header UTF-8? like: ?xml version=1.0 encoding=UTF-8? Spyros Papantoniou, PhD On 30 Αυγ 2010, at 12:10 π.μ., Nikolaos Paraschou wrote: First of all, thank you for your reply Spyros. I created myconfig2.xml with exactly the following code: fop version=1.0 renderers renderer mime=application/pdf fonts font embed-url=file:///Users/nikos/MyFonts/FreeSans.ttf font-triplet name=FreeSans style=normal weight=normal/ /font /fonts /renderer /renderers /fop and then I run the command: fop -c myconfig2.xml -xml name.xml -xsl name2fo.xsl -pdf name.pdf which produced again a severe exception: C:\Users\nikos\Desktopfop -c myconfig2.xml -xml name.xml -xsl name2fo.xsl -pdf name.pdf 29 +Ϋή 2010 11:57:59 ΉΉ org.apache.fop.cli.Main startFOP SEVERE: Exception javax.xml.transform.TransformerException: Invalid byte 2 of 2-byte UTF-8 sequenc e. at org.apache.fop.cli.InputHandler.transformTo(InputHandler.java:302) at org.apache.fop.cli.InputHandler.renderTo(InputHandler.java:130) at org.apache.fop.cli.Main.startFOP(Main.java:174) at org.apache.fop.cli.Main.main(Main.java:205) Caused by: javax.xml.transform.TransformerException: Invalid byte 2 of 2-byte UT F-8 sequence. at org.apache.xalan.transformer.TransformerImpl.fatalError(TransformerIm pl.java:780) at org.apache.xalan.transformer.TransformerImpl.transform(TransformerImp l.java:756) at org.apache.xalan.transformer.TransformerImpl.transform(TransformerImp l.java:1284) at org.apache.xalan.transformer.TransformerImpl.transform(TransformerImp l.java:1262) at org.apache.fop.cli.InputHandler.transformTo(InputHandler.java:299) ... 3 more - ; SystemID: file:/C:/Users/nikos/Desktop/name.xml; Line#: 1; Column#: 7 javax.xml.transform.TransformerException: Invalid byte 2 of 2-byte UTF-8 sequenc e. at org.apache.xalan.transformer.TransformerImpl.fatalError(TransformerIm pl.java:780) at org.apache.xalan.transformer.TransformerImpl.transform(TransformerImp l.java:756) at org.apache.xalan.transformer.TransformerImpl.transform(TransformerImp l.java:1284) at org.apache.xalan.transformer.TransformerImpl.transform(TransformerImp l.java:1262) at org.apache.fop.cli.InputHandler.transformTo(InputHandler.java:299) at org.apache.fop.cli.InputHandler.renderTo(InputHandler.java:130) at org.apache.fop.cli.Main.startFOP(Main.java:174) at org.apache.fop.cli.Main.main(Main.java:205) Obviously I am missing something here. Any idea what might that be? Thank you, Nikos 2010/8/29 Spyros Papantoniou spyros.papanton...@gmail.com: Better use something like: fop version=1.0 renderers renderer mime=application/pdf fonts font embed-url=file:///Users/sjp/Triboni8090/ginkgo/fopFonts/FreeSans.ttf font-triplet name=FreeSans style=normal weight=normal/ /font /fonts renderer /renderers /fop I think you missed the actual filename in the declaration. Greek works after 0.94 version though. No Greek with 0.20! Spyros Papantoniou, PhD SIP Ltd Software Integration Processes Ag. Konstantinou 40 GR-15124 Marousi Tel: +30 210 6178270 On 29 Αυγ 2010, at 7:35 μ.μ., Nikolaos