You are viewing a plain text version of this content. The canonical link for it is here.
Posted to fop-users@xmlgraphics.apache.org by Yogesh Bhosale <yb...@gmail.com> on 2019/02/19 08:58:24 UTC

Glyph not found error on different linux kernel version

I am using apache fop 2.0 for document generation. I was using auto-detect
feature to detect fonts from the specified directory. This directory
contained two font files (.ttf, .pfb) for a same font; earlier this setting
used to work for me. Until I upgraded my linux kernel version and It
started picking wrong font file, so while generating PNG document I am
getting error "Glyph not found" for some characters and document generated
is garbled. To fix this error, I added the manual font mapping to .ttf file
along with auto-detect. This fix worked but it caused latency to increase.
Any clue on this behaviour?

Re: Glyph not found error on different linux kernel version

Posted by Yogesh Bhosale <yb...@gmail.com>.
Hi,

I figured out the issue. Auto detect relies on "File.listFiles()" java
method to get list of font files. This method returns list of files present
in specified autodetect directory. But the ordering of files is system
dependent, so if you have two files for same font which one will be picked
depends on order. Therefore with underlying kernel update, application
started picking wrong font file and henve the issue. I tackled this issue
with specifying correct font files.

Comming to latency issue, I had metrics which showed me the increase avg
latency for the application. I figured out reason for this also. FOP
creates "FontInfo" object for each renderer, it contains glyph data for the
fonts. With configuration containing both manual and autodetect font
mapping, each font file started loading up twice hence the increase in
latency.

Regards,
Yogesh

On Mon, Mar 4, 2019, 17:47 Chris <bo...@hotmail.com> wrote:

> Hi,
>
> Auto-detect is fairly unreliable, and listing the specific fonts you
> need is recommended. What do you mean by latency increased?
>
> Thanks,
>
> Chris
>
> On 19/02/2019 08:58, Yogesh Bhosale wrote:
> > I am using apache fop 2.0 for document generation. I was using
> > auto-detect feature to detect fonts from the specified directory. This
> > directory contained two font files (.ttf, .pfb) for a same font;
> > earlier this setting used to work for me. Until I upgraded my linux
> > kernel version and It started picking wrong font file, so while
> > generating PNG document I am getting error "Glyph not found" for some
> > characters and document generated is garbled. To fix this error, I
> > added the manual font mapping to .ttf file along with auto-detect.
> > This fix worked but it caused latency to increase. Any clue on this
> > behaviour?
>
>
>

Re: Glyph not found error on different linux kernel version

Posted by Chris <bo...@hotmail.com>.
Hi,

Auto-detect is fairly unreliable, and listing the specific fonts you 
need is recommended. What do you mean by latency increased?

Thanks,

Chris

On 19/02/2019 08:58, Yogesh Bhosale wrote:
> I am using apache fop 2.0 for document generation. I was using 
> auto-detect feature to detect fonts from the specified directory. This 
> directory contained two font files (.ttf, .pfb) for a same font; 
> earlier this setting used to work for me. Until I upgraded my linux 
> kernel version and It started picking wrong font file, so while 
> generating PNG document I am getting error "Glyph not found" for some 
> characters and document generated is garbled. To fix this error, I 
> added the manual font mapping to .ttf file along with auto-detect. 
> This fix worked but it caused latency to increase. Any clue on this 
> behaviour?